/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 19:31:43,089 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 19:31:43,092 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 19:31:43,127 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 19:31:43,127 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 19:31:43,128 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 19:31:43,130 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 19:31:43,132 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 19:31:43,134 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 19:31:43,137 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 19:31:43,137 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 19:31:43,138 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 19:31:43,139 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 19:31:43,140 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 19:31:43,141 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 19:31:43,143 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 19:31:43,143 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 19:31:43,144 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 19:31:43,145 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 19:31:43,149 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 19:31:43,150 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 19:31:43,151 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 19:31:43,152 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 19:31:43,152 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 19:31:43,153 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 19:31:43,157 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 19:31:43,158 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 19:31:43,158 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 19:31:43,158 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 19:31:43,158 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 19:31:43,160 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 19:31:43,160 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 19:31:43,161 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 19:31:43,161 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 19:31:43,162 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 19:31:43,162 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 19:31:43,162 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 19:31:43,163 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 19:31:43,163 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 19:31:43,163 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 19:31:43,164 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 19:31:43,165 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 19:31:43,165 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 19:31:43,172 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 19:31:43,173 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 19:31:43,173 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 19:31:43,173 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 19:31:43,174 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 19:31:43,174 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 19:31:43,174 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 19:31:43,174 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 19:31:43,174 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 19:31:43,175 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 19:31:43,175 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 19:31:43,176 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:43,176 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 19:31:43,176 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 19:31:43,177 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 19:31:43,177 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 19:31:43,360 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 19:31:43,386 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 19:31:43,387 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 19:31:43,388 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 19:31:43,389 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 19:31:43,389 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound100.c [2022-04-07 19:31:43,428 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/372324029/fed91391433046fb970bb0a231b1e89f/FLAG1f61191e2 [2022-04-07 19:31:43,781 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 19:31:43,781 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound100.c [2022-04-07 19:31:43,785 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/372324029/fed91391433046fb970bb0a231b1e89f/FLAG1f61191e2 [2022-04-07 19:31:43,801 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/372324029/fed91391433046fb970bb0a231b1e89f [2022-04-07 19:31:43,802 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 19:31:43,804 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 19:31:43,806 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:43,806 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 19:31:43,809 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 19:31:43,809 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:43" (1/1) ... [2022-04-07 19:31:43,810 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@57baa16c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:43, skipping insertion in model container [2022-04-07 19:31:43,810 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:43" (1/1) ... [2022-04-07 19:31:43,814 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 19:31:43,825 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 19:31:43,996 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_valuebound100.c[535,548] [2022-04-07 19:31:44,039 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:44,044 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 19:31:44,067 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_valuebound100.c[535,548] [2022-04-07 19:31:44,085 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:44,109 INFO L208 MainTranslator]: Completed translation [2022-04-07 19:31:44,110 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44 WrapperNode [2022-04-07 19:31:44,110 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:44,110 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 19:31:44,111 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 19:31:44,111 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 19:31:44,117 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,117 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,143 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,143 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,155 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,160 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,164 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,165 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 19:31:44,165 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 19:31:44,166 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 19:31:44,166 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 19:31:44,168 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,188 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:44,200 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:44,228 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 19:31:44,241 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 19:31:44,257 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 19:31:44,257 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 19:31:44,257 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 19:31:44,257 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 19:31:44,258 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 19:31:44,258 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 19:31:44,258 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 19:31:44,259 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 19:31:44,259 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 19:31:44,260 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 19:31:44,260 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 19:31:44,260 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 19:31:44,260 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 19:31:44,260 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 19:31:44,306 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 19:31:44,307 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 19:31:44,502 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 19:31:44,506 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 19:31:44,506 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-07 19:31:44,507 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:44 BoogieIcfgContainer [2022-04-07 19:31:44,507 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 19:31:44,508 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 19:31:44,508 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 19:31:44,523 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 19:31:44,526 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:44" (1/1) ... [2022-04-07 19:31:44,527 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 19:31:44,559 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:44 BasicIcfg [2022-04-07 19:31:44,559 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 19:31:44,561 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 19:31:44,561 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 19:31:44,563 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 19:31:44,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 07:31:43" (1/4) ... [2022-04-07 19:31:44,563 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@286a3712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:44, skipping insertion in model container [2022-04-07 19:31:44,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:44" (2/4) ... [2022-04-07 19:31:44,564 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@286a3712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:44, skipping insertion in model container [2022-04-07 19:31:44,564 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:44" (3/4) ... [2022-04-07 19:31:44,564 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@286a3712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:31:44, skipping insertion in model container [2022-04-07 19:31:44,564 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:44" (4/4) ... [2022-04-07 19:31:44,565 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound100.cJordan [2022-04-07 19:31:44,567 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 19:31:44,568 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 19:31:44,598 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 19:31:44,604 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 19:31:44,604 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 19:31:44,615 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 19:31:44,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:44,619 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:44,619 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:31:44,620 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:44,623 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:44,623 INFO L85 PathProgramCache]: Analyzing trace with hash 1042421720, now seen corresponding path program 1 times [2022-04-07 19:31:44,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:44,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1312304836] [2022-04-07 19:31:44,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:44,630 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:44,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,766 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 19:31:44,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,791 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {40#true} is VALID [2022-04-07 19:31:44,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:44,792 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:44,793 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 19:31:44,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,798 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,799 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,799 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,799 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 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:44,799 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 19:31:44,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,816 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,817 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 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:44,817 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 19:31:44,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,828 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:44,828 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-07 19:31:44,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:44,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,839 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:44,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 19:31:44,840 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {40#true} is VALID [2022-04-07 19:31:44,840 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:44,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:44,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:44,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {40#true} is VALID [2022-04-07 19:31:44,841 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 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-07 19:31:44,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,842 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,842 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,842 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 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:44,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {41#false} is VALID [2022-04-07 19:31:44,842 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 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-07 19:31:44,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,847 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,848 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 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:44,848 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-07 19:31:44,848 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,848 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,849 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,849 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:44,849 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-07 19:31:44,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:44,850 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,850 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,850 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:44,850 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {41#false} is VALID [2022-04-07 19:31:44,853 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} [125] L48-2-->L35-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,853 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {41#false} is VALID [2022-04-07 19:31:44,853 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41#false} is VALID [2022-04-07 19:31:44,853 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} [135] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,853 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:44,854 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:31:44,854 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:44,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1312304836] [2022-04-07 19:31:44,855 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1312304836] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 19:31:44,855 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 19:31:44,855 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 19:31:44,856 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1467038439] [2022-04-07 19:31:44,856 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:31:44,861 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-07 19:31:44,862 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:44,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:44,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:44,908 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 19:31:44,908 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:44,921 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 19:31:44,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 19:31:44,925 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:45,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:45,058 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-07 19:31:45,062 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 19:31:45,063 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-07 19:31:45,063 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:31:45,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:45,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:45,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:45,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:45,079 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 53 transitions. [2022-04-07 19:31:45,156 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:45,162 INFO L225 Difference]: With dead ends: 37 [2022-04-07 19:31:45,162 INFO L226 Difference]: Without dead ends: 32 [2022-04-07 19:31:45,163 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 19:31:45,165 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 22 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 19:31:45,166 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 19:31:45,176 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-07 19:31:45,183 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-07 19:31:45,183 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:31:45,183 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:45,184 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:45,184 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:45,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:45,188 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:45,188 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:45,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:45,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:45,189 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-07 19:31:45,189 INFO L87 Difference]: Start difference. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-07 19:31:45,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:45,192 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:45,192 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:45,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:45,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:45,193 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:31:45,193 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:31:45,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:45,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 40 transitions. [2022-04-07 19:31:45,196 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 40 transitions. Word has length 33 [2022-04-07 19:31:45,196 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:31:45,196 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 40 transitions. [2022-04-07 19:31:45,196 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:45,196 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:45,197 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:45,197 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:45,197 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:31:45,197 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 19:31:45,197 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:45,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:45,198 INFO L85 PathProgramCache]: Analyzing trace with hash 104571547, now seen corresponding path program 1 times [2022-04-07 19:31:45,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:45,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [902237250] [2022-04-07 19:31:45,198 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:45,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:45,214 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:31:45,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1372693492] [2022-04-07 19:31:45,215 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:45,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:31:45,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:45,216 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 19:31:45,237 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 19:31:45,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:45,282 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 19:31:45,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:45,300 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:31:45,622 INFO L272 TraceCheckUtils]: 0: Hoare triple {197#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {197#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {197#true} is VALID [2022-04-07 19:31:45,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {197#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,623 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {197#true} {197#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,623 INFO L272 TraceCheckUtils]: 4: Hoare triple {197#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L290 TraceCheckUtils]: 5: Hoare triple {197#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L272 TraceCheckUtils]: 6: Hoare triple {197#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L290 TraceCheckUtils]: 7: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L290 TraceCheckUtils]: 8: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L290 TraceCheckUtils]: 9: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,624 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {197#true} {197#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L290 TraceCheckUtils]: 11: Hoare triple {197#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L272 TraceCheckUtils]: 12: Hoare triple {197#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L290 TraceCheckUtils]: 13: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L290 TraceCheckUtils]: 14: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L290 TraceCheckUtils]: 15: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,625 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {197#true} {197#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L272 TraceCheckUtils]: 17: Hoare triple {197#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L290 TraceCheckUtils]: 18: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L290 TraceCheckUtils]: 19: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L290 TraceCheckUtils]: 20: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {197#true} {197#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L272 TraceCheckUtils]: 22: Hoare triple {197#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:45,626 INFO L290 TraceCheckUtils]: 23: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:45,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,627 INFO L290 TraceCheckUtils]: 25: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:45,627 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {197#true} {197#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:47,644 WARN L290 TraceCheckUtils]: 27: Hoare triple {197#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is UNKNOWN [2022-04-07 19:31:47,645 INFO L290 TraceCheckUtils]: 28: Hoare triple {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-07 19:31:48,339 INFO L272 TraceCheckUtils]: 29: Hoare triple {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {290#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:31:48,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {290#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {294#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:48,340 INFO L290 TraceCheckUtils]: 31: Hoare triple {294#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {198#false} is VALID [2022-04-07 19:31:48,341 INFO L290 TraceCheckUtils]: 32: Hoare triple {198#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {198#false} is VALID [2022-04-07 19:31:48,341 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:31:48,341 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 19:31:48,341 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:48,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [902237250] [2022-04-07 19:31:48,341 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:31:48,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1372693492] [2022-04-07 19:31:48,342 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1372693492] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 19:31:48,342 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 19:31:48,342 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 19:31:48,342 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1444157417] [2022-04-07 19:31:48,342 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:31:48,343 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-07 19:31:48,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:48,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:31:52,367 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 22 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:52,367 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 19:31:52,367 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:52,368 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 19:31:52,368 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 19:31:52,368 INFO L87 Difference]: Start difference. First operand 32 states and 40 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:31:55,759 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.84s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 19:31:58,552 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 19:32:04,153 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 19:32:09,380 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.85s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 19:32:09,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:09,412 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:09,412 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 19:32:09,412 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-07 19:32:09,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:32:09,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:09,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-07 19:32:09,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:09,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-07 19:32:09,417 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-07 19:32:15,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 19:32:15,486 INFO L225 Difference]: With dead ends: 46 [2022-04-07 19:32:15,486 INFO L226 Difference]: Without dead ends: 46 [2022-04-07 19:32:15,486 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 19:32:15,487 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 11 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 2 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 11.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 11.0s IncrementalHoareTripleChecker+Time [2022-04-07 19:32:15,487 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 115 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 53 Invalid, 2 Unknown, 0 Unchecked, 11.0s Time] [2022-04-07 19:32:15,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-07 19:32:15,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-07 19:32:15,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:32:15,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:15,491 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:15,492 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:15,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:15,498 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:15,498 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-07 19:32:15,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:15,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:15,499 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-07 19:32:15,499 INFO L87 Difference]: Start difference. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-07 19:32:15,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:15,502 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:15,502 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-07 19:32:15,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:15,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:15,502 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:32:15,502 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:32:15,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:15,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 58 transitions. [2022-04-07 19:32:15,505 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 58 transitions. Word has length 33 [2022-04-07 19:32:15,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:32:15,505 INFO L478 AbstractCegarLoop]: Abstraction has 45 states and 58 transitions. [2022-04-07 19:32:15,505 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:15,505 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 58 transitions. [2022-04-07 19:32:15,506 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 19:32:15,506 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:32:15,506 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:32:15,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 19:32:15,710 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:32:15,713 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:32:15,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:32:15,713 INFO L85 PathProgramCache]: Analyzing trace with hash -844389750, now seen corresponding path program 1 times [2022-04-07 19:32:15,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:32:15,714 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [839907588] [2022-04-07 19:32:15,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:32:15,714 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:32:15,737 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:32:15,737 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1279864224] [2022-04-07 19:32:15,737 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:32:15,737 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:32:15,737 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:32:15,741 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 19:32:15,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 19:32:15,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:32:15,783 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 19:32:15,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:32:15,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:32:15,991 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,991 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {485#true} is VALID [2022-04-07 19:32:15,991 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,991 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:15,992 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:15,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,994 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:15,995 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:15,995 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:15,995 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:15,997 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:15,997 INFO L290 TraceCheckUtils]: 31: Hoare triple {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [136] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:15,998 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:15,999 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {591#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-07 19:32:15,999 INFO L290 TraceCheckUtils]: 34: Hoare triple {591#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-07 19:32:16,000 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:32:16,000 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:16,000 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:16,001 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:16,001 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:32:16,001 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 19:32:16,374 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:16,375 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:16,375 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:16,376 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:32:16,377 INFO L290 TraceCheckUtils]: 34: Hoare triple {622#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-07 19:32:16,377 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {622#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-07 19:32:16,378 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:16,378 INFO L290 TraceCheckUtils]: 31: Hoare triple {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [136] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:16,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 19:32:16,378 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:16,379 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:16,380 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 100)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 100)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,381 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {485#true} is VALID [2022-04-07 19:32:16,382 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:16,382 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:32:16,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:32:16,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [839907588] [2022-04-07 19:32:16,382 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:32:16,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1279864224] [2022-04-07 19:32:16,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1279864224] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 19:32:16,383 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 19:32:16,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 19:32:16,383 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1731402207] [2022-04-07 19:32:16,383 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 19:32:16,383 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-07 19:32:16,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:32:16,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:16,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:32:16,408 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 19:32:16,408 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:32:16,409 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 19:32:16,409 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-07 19:32:16,409 INFO L87 Difference]: Start difference. First operand 45 states and 58 transitions. Second operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:16,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:16,683 INFO L93 Difference]: Finished difference Result 43 states and 56 transitions. [2022-04-07 19:32:16,683 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 19:32:16,683 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-07 19:32:16,683 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:32:16,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:16,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:32:16,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:16,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:32:16,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 19:32:16,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:32:16,728 INFO L225 Difference]: With dead ends: 43 [2022-04-07 19:32:16,729 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 19:32:16,729 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-07 19:32:16,730 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 21 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 19:32:16,730 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 133 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 19:32:16,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 19:32:16,730 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 19:32:16,730 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:32:16,730 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 19:32:16,731 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 19:32:16,731 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 19:32:16,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:16,731 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:32:16,731 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:16,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:16,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:16,731 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 19:32:16,731 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 19:32:16,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:16,731 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:32:16,731 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:16,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:16,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:16,731 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:32:16,732 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:32:16,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 19:32:16,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 19:32:16,732 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 39 [2022-04-07 19:32:16,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:32:16,732 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 19:32:16,732 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:16,732 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:16,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:16,734 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 19:32:16,755 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 19:32:16,953 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 19:32:16,958 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-04-07 19:32:16,959 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 19:32:16,961 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:32:16 BasicIcfg [2022-04-07 19:32:16,961 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 19:32:16,962 INFO L158 Benchmark]: Toolchain (without parser) took 33158.22ms. Allocated memory was 202.4MB in the beginning and 243.3MB in the end (delta: 40.9MB). Free memory was 147.2MB in the beginning and 172.9MB in the end (delta: -25.7MB). Peak memory consumption was 14.5MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,962 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 202.4MB. Free memory is still 163.7MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 19:32:16,962 INFO L158 Benchmark]: CACSL2BoogieTranslator took 304.35ms. Allocated memory is still 202.4MB. Free memory was 146.9MB in the beginning and 170.9MB in the end (delta: -24.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,962 INFO L158 Benchmark]: Boogie Preprocessor took 54.51ms. Allocated memory is still 202.4MB. Free memory was 170.9MB in the beginning and 169.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,963 INFO L158 Benchmark]: RCFGBuilder took 341.94ms. Allocated memory is still 202.4MB. Free memory was 169.3MB in the beginning and 157.1MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,963 INFO L158 Benchmark]: IcfgTransformer took 51.75ms. Allocated memory is still 202.4MB. Free memory was 157.1MB in the beginning and 155.3MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,963 INFO L158 Benchmark]: TraceAbstraction took 32400.39ms. Allocated memory was 202.4MB in the beginning and 243.3MB in the end (delta: 40.9MB). Free memory was 154.6MB in the beginning and 172.9MB in the end (delta: -18.3MB). Peak memory consumption was 23.2MB. Max. memory is 8.0GB. [2022-04-07 19:32:16,964 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 202.4MB. Free memory is still 163.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 304.35ms. Allocated memory is still 202.4MB. Free memory was 146.9MB in the beginning and 170.9MB in the end (delta: -24.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 54.51ms. Allocated memory is still 202.4MB. Free memory was 170.9MB in the beginning and 169.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 341.94ms. Allocated memory is still 202.4MB. Free memory was 169.3MB in the beginning and 157.1MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 51.75ms. Allocated memory is still 202.4MB. Free memory was 157.1MB in the beginning and 155.3MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 32400.39ms. Allocated memory was 202.4MB in the beginning and 243.3MB in the end (delta: 40.9MB). Free memory was 154.6MB in the beginning and 172.9MB in the end (delta: -18.3MB). Peak memory consumption was 23.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 32.4s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 23.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 2 mSolverCounterUnknown, 67 SdHoareTripleChecker+Valid, 11.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 54 mSDsluCounter, 288 SdHoareTripleChecker+Invalid, 11.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 191 mSDsCounter, 23 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 137 IncrementalHoareTripleChecker+Invalid, 162 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 23 mSolverCounterUnsat, 97 mSDtfsCounter, 137 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 128 GetRequests, 112 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=45occurred in iteration=2, InterpolantAutomatonStates: 14, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 3 MinimizatonAttempts, 1 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 3.8s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 140 ConstructedInterpolants, 0 QuantifiedInterpolants, 317 SizeOfPredicates, 9 NumberOfNonLiveVariables, 209 ConjunctsInSsa, 23 ConjunctsInUnsatCore, 4 InterpolantComputations, 2 PerfectInterpolantSequences, 98/100 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 19:32:16,988 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...