/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_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 19:31:34,894 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 19:31:34,896 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 19:31:34,939 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 19:31:34,940 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 19:31:34,941 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 19:31:34,943 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 19:31:34,946 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 19:31:34,947 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 19:31:34,951 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 19:31:34,952 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 19:31:34,953 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 19:31:34,954 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 19:31:34,955 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 19:31:34,956 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 19:31:34,959 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 19:31:34,959 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 19:31:34,960 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 19:31:34,962 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 19:31:34,967 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 19:31:34,969 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 19:31:34,969 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 19:31:34,970 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 19:31:34,971 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 19:31:34,972 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 19:31:34,978 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 19:31:34,978 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 19:31:34,978 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 19:31:34,979 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 19:31:34,979 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 19:31:34,980 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 19:31:34,981 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 19:31:34,982 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 19:31:34,982 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 19:31:34,983 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 19:31:34,984 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 19:31:34,984 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 19:31:34,984 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 19:31:34,985 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 19:31:34,985 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 19:31:34,985 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 19:31:34,987 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 19:31:34,987 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:34,997 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 19:31:34,997 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 19:31:34,998 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 19:31:34,999 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 19:31:35,000 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 19:31:35,000 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 19:31:35,000 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 19:31:35,001 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 19:31:35,001 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 19:31:35,001 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 19:31:35,001 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 19:31:35,001 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 19:31:35,001 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 19:31:35,002 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:35,002 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 19:31:35,002 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 19:31:35,003 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 19:31:35,003 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:35,247 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 19:31:35,269 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 19:31:35,271 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 19:31:35,272 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 19:31:35,272 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 19:31:35,273 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c [2022-04-07 19:31:35,328 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1c46b7fb6/261cd87f3a344d4b91d06d7e47d0ba0b/FLAG8a84d2104 [2022-04-07 19:31:35,711 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 19:31:35,711 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c [2022-04-07 19:31:35,721 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1c46b7fb6/261cd87f3a344d4b91d06d7e47d0ba0b/FLAG8a84d2104 [2022-04-07 19:31:36,107 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1c46b7fb6/261cd87f3a344d4b91d06d7e47d0ba0b [2022-04-07 19:31:36,109 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 19:31:36,110 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 19:31:36,112 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:36,112 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 19:31:36,114 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 19:31:36,115 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:36" (1/1) ... [2022-04-07 19:31:36,116 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5afc0af7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:36, skipping insertion in model container [2022-04-07 19:31:36,116 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:36" (1/1) ... [2022-04-07 19:31:36,123 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 19:31:36,134 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 19:31:36,270 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c[535,548] [2022-04-07 19:31:36,301 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:36,309 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 19:31:36,325 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c[535,548] [2022-04-07 19:31:36,349 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:36,362 INFO L208 MainTranslator]: Completed translation [2022-04-07 19:31:36,362 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:36 WrapperNode [2022-04-07 19:31:36,362 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:36,363 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 19:31:36,363 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 19:31:36,364 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 19:31:36,374 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:36" (1/1) ... [2022-04-07 19:31:36,374 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:36" (1/1) ... [2022-04-07 19:31:36,390 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:36" (1/1) ... [2022-04-07 19:31:36,390 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:36" (1/1) ... [2022-04-07 19:31:36,400 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:36" (1/1) ... [2022-04-07 19:31:36,404 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:36" (1/1) ... [2022-04-07 19:31:36,405 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:36" (1/1) ... [2022-04-07 19:31:36,407 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 19:31:36,408 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 19:31:36,408 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 19:31:36,408 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 19:31:36,409 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:36" (1/1) ... [2022-04-07 19:31:36,415 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:36,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:36,436 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:36,451 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:36,483 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 19:31:36,483 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 19:31:36,484 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 19:31:36,484 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 19:31:36,484 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 19:31:36,484 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 19:31:36,484 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 19:31:36,485 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 19:31:36,486 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 19:31:36,486 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 19:31:36,488 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 19:31:36,488 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 19:31:36,488 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 19:31:36,488 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 19:31:36,488 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 19:31:36,546 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 19:31:36,548 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 19:31:36,746 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 19:31:36,763 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 19:31:36,763 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-07 19:31:36,765 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:36 BoogieIcfgContainer [2022-04-07 19:31:36,765 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 19:31:36,766 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 19:31:36,766 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 19:31:36,767 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 19:31:36,770 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:36" (1/1) ... [2022-04-07 19:31:36,771 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 19:31:36,801 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:36 BasicIcfg [2022-04-07 19:31:36,801 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 19:31:36,803 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 19:31:36,803 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 19:31:36,812 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 19:31:36,812 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 07:31:36" (1/4) ... [2022-04-07 19:31:36,813 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3b9f87e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:36, skipping insertion in model container [2022-04-07 19:31:36,813 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:36" (2/4) ... [2022-04-07 19:31:36,813 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3b9f87e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:36, skipping insertion in model container [2022-04-07 19:31:36,813 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:36" (3/4) ... [2022-04-07 19:31:36,814 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3b9f87e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:31:36, skipping insertion in model container [2022-04-07 19:31:36,814 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:36" (4/4) ... [2022-04-07 19:31:36,815 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound1.cJordan [2022-04-07 19:31:36,818 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 19:31:36,818 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 19:31:36,852 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 19:31:36,857 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:36,857 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 19:31:36,872 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:36,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:36,879 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:36,879 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:36,880 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:36,884 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:36,884 INFO L85 PathProgramCache]: Analyzing trace with hash 1042421720, now seen corresponding path program 1 times [2022-04-07 19:31:36,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:36,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [196580748] [2022-04-07 19:31:36,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:36,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:37,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,089 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 19:31:37,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,124 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:37,124 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:37,125 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:37,125 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 19:31:37,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,132 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:37,132 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:37,133 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:37,133 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:37,133 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 19:31:37,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,140 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:37,140 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:37,141 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:37,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:37,141 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 19:31:37,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,155 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:37,156 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:37,156 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:37,156 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:37,157 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-07 19:31:37,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,163 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:37,164 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:37,164 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:37,164 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:37,165 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:37,166 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:37,166 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:37,166 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:37,167 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:37,167 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:37,167 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-07 19:31:37,167 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:37,168 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:37,168 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:37,169 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:37,169 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:37,169 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-07 19:31:37,169 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:37,170 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:37,170 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:37,170 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:37,171 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:37,171 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:37,171 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:37,172 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:37,172 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:37,172 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:37,173 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:37,173 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:37,173 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:37,174 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:37,174 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:37,174 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:37,175 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:37,175 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:37,175 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:37,175 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:37,176 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:37,176 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:37,177 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [196580748] [2022-04-07 19:31:37,177 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [196580748] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 19:31:37,177 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 19:31:37,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 19:31:37,178 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1834475890] [2022-04-07 19:31:37,179 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:31:37,183 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:37,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:37,187 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:37,220 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:37,221 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 19:31:37,221 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:37,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 19:31:37,240 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 19:31:37,244 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:37,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:37,383 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-07 19:31:37,383 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 19:31:37,383 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:37,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:31:37,384 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:37,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:37,391 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:37,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:37,395 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 53 transitions. [2022-04-07 19:31:37,453 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:37,464 INFO L225 Difference]: With dead ends: 37 [2022-04-07 19:31:37,464 INFO L226 Difference]: Without dead ends: 32 [2022-04-07 19:31:37,465 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:37,471 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:37,472 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:37,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-07 19:31:37,501 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-07 19:31:37,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:31:37,503 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:37,504 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:37,505 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:37,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:37,513 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:37,513 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:37,514 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:37,514 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:37,514 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:37,515 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:37,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:37,525 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:37,525 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:37,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:37,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:37,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:31:37,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:31:37,528 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:37,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 40 transitions. [2022-04-07 19:31:37,533 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 40 transitions. Word has length 33 [2022-04-07 19:31:37,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:31:37,533 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 40 transitions. [2022-04-07 19:31:37,534 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:37,534 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:37,535 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:37,535 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:37,535 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:37,535 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 19:31:37,535 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:37,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:37,536 INFO L85 PathProgramCache]: Analyzing trace with hash 104571547, now seen corresponding path program 1 times [2022-04-07 19:31:37,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:37,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [586348112] [2022-04-07 19:31:37,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:37,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:37,566 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:31:37,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [736322466] [2022-04-07 19:31:37,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:37,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:31:37,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:37,576 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:37,582 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:37,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,655 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-07 19:31:37,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:37,691 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:31:42,071 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:42,072 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:42,072 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:42,074 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:42,075 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:42,075 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:42,075 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 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:42,076 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] {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 19:31:42,076 INFO L290 TraceCheckUtils]: 8: Hoare triple {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,077 INFO L290 TraceCheckUtils]: 9: Hoare triple {227#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,078 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {227#(not (= |assume_abort_if_not_#in~cond| 0))} {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 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {234#(and (<= 0 main_~A~0) (<= main_~A~0 1))} is VALID [2022-04-07 19:31:42,079 INFO L290 TraceCheckUtils]: 11: Hoare triple {234#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {234#(and (<= 0 main_~A~0) (<= main_~A~0 1))} is VALID [2022-04-07 19:31:42,079 INFO L272 TraceCheckUtils]: 12: Hoare triple {234#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:42,079 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] {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 19:31:42,080 INFO L290 TraceCheckUtils]: 14: Hoare triple {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,081 INFO L290 TraceCheckUtils]: 15: Hoare triple {227#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,082 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {227#(not (= |assume_abort_if_not_#in~cond| 0))} {234#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {253#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} is VALID [2022-04-07 19:31:42,082 INFO L272 TraceCheckUtils]: 17: Hoare triple {253#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:42,083 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] {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 19:31:42,083 INFO L290 TraceCheckUtils]: 19: Hoare triple {223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {227#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 19:31:42,088 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {227#(not (= |assume_abort_if_not_#in~cond| 0))} {253#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {269#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} is VALID [2022-04-07 19:31:42,088 INFO L272 TraceCheckUtils]: 22: Hoare triple {269#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:42,088 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:42,088 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:42,089 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:42,089 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {197#true} {269#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {269#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} is VALID [2022-04-07 19:31:42,093 INFO L290 TraceCheckUtils]: 27: Hoare triple {269#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {288#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} is VALID [2022-04-07 19:31:42,095 INFO L290 TraceCheckUtils]: 28: Hoare triple {288#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {288#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} is VALID [2022-04-07 19:31:42,098 INFO L272 TraceCheckUtils]: 29: Hoare triple {288#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:31:42,098 INFO L290 TraceCheckUtils]: 30: Hoare triple {295#(<= 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] {299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:42,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {299#(<= 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:42,099 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:42,100 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-07 19:31:42,100 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 19:31:42,441 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:42,442 INFO L290 TraceCheckUtils]: 31: Hoare triple {299#(<= 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:42,443 INFO L290 TraceCheckUtils]: 30: Hoare triple {295#(<= 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] {299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:42,444 INFO L272 TraceCheckUtils]: 29: Hoare triple {315#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:31:42,444 INFO L290 TraceCheckUtils]: 28: Hoare triple {315#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(= (+ (* 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:31:42,447 INFO 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] {315#(= (+ (* 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:31:42,447 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:42,448 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:42,448 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:42,448 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:42,448 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:42,449 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:42,449 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:42,449 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:42,449 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:42,451 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:42,451 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 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:42,451 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:42,452 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:42,453 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:42,453 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 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:42,453 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:42,454 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 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:42,454 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:42,454 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:42,455 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:42,455 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 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:42,458 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:42,458 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:42,461 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:42,464 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:42,464 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:42,464 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:42,465 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:42,465 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:42,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [586348112] [2022-04-07 19:31:42,465 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:31:42,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [736322466] [2022-04-07 19:31:42,465 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [736322466] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 19:31:42,466 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 19:31:42,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-07 19:31:42,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1752566506] [2022-04-07 19:31:42,467 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:31:42,467 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:42,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:42,468 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:42,505 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:42,505 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 19:31:42,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:42,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 19:31:42,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-07 19:31:42,506 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:42,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:42,781 INFO L93 Difference]: Finished difference Result 36 states and 43 transitions. [2022-04-07 19:31:42,781 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 19:31:42,781 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:42,781 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:31:42,781 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:31:42,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 19:31:42,784 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:31:42,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 19:31:42,786 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-07 19:31:42,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:42,839 INFO L225 Difference]: With dead ends: 36 [2022-04-07 19:31:42,840 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 19:31:42,840 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 55 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-07 19:31:42,841 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 11 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 96 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 19:31:42,841 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 96 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 19:31:42,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 19:31:42,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-07 19:31:42,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:31:42,845 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:42,845 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:42,846 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:42,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:42,848 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-07 19:31:42,848 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-07 19:31:42,849 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:42,849 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:42,849 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-07 19:31:42,850 INFO L87 Difference]: Start difference. First operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-07 19:31:42,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:42,852 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-07 19:31:42,852 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-07 19:31:42,853 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:42,853 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:42,853 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:31:42,853 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:31:42,853 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:42,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 41 transitions. [2022-04-07 19:31:42,855 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 41 transitions. Word has length 33 [2022-04-07 19:31:42,855 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:31:42,856 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 41 transitions. [2022-04-07 19:31:42,856 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:31:42,856 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-07 19:31:42,857 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 19:31:42,857 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:42,857 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:31:42,878 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-07 19:31:43,057 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:31:43,058 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:43,058 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:43,059 INFO L85 PathProgramCache]: Analyzing trace with hash -844389750, now seen corresponding path program 1 times [2022-04-07 19:31:43,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:43,059 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2045292290] [2022-04-07 19:31:43,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:43,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:43,077 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:31:43,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [169008700] [2022-04-07 19:31:43,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:43,077 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:31:43,078 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:43,079 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:31:43,080 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:31:43,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:43,128 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 19:31:43,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:43,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:31:43,351 INFO L272 TraceCheckUtils]: 0: Hoare triple {545#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {545#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,352 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {545#true} {545#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,352 INFO L272 TraceCheckUtils]: 4: Hoare triple {545#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,352 INFO L290 TraceCheckUtils]: 5: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,352 INFO L272 TraceCheckUtils]: 6: Hoare triple {545#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {545#true} is VALID [2022-04-07 19:31:43,352 INFO L290 TraceCheckUtils]: 7: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L290 TraceCheckUtils]: 8: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {545#true} {545#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L290 TraceCheckUtils]: 11: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L272 TraceCheckUtils]: 12: Hoare triple {545#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {545#true} is VALID [2022-04-07 19:31:43,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L290 TraceCheckUtils]: 14: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L290 TraceCheckUtils]: 15: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {545#true} {545#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L272 TraceCheckUtils]: 17: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L290 TraceCheckUtils]: 20: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {545#true} {545#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] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L272 TraceCheckUtils]: 22: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,355 INFO L290 TraceCheckUtils]: 25: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,356 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {545#true} {545#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] {545#true} is VALID [2022-04-07 19:31:43,356 INFO L290 TraceCheckUtils]: 27: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,356 INFO L290 TraceCheckUtils]: 28: Hoare triple {545#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,356 INFO L272 TraceCheckUtils]: 29: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,356 INFO L290 TraceCheckUtils]: 30: Hoare triple {545#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] {640#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:43,357 INFO L290 TraceCheckUtils]: 31: Hoare triple {640#(= |__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[] {644#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:31:43,357 INFO L290 TraceCheckUtils]: 32: Hoare triple {644#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {644#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:31:43,358 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {644#(not (= |__VERIFIER_assert_#in~cond| 0))} {545#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] {651#(= (+ (* 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:31:43,359 INFO L290 TraceCheckUtils]: 34: Hoare triple {651#(= (+ (* 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[] {655#(= (+ (* 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:31:43,360 INFO L272 TraceCheckUtils]: 35: Hoare triple {655#(= (+ (* 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] {659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:31:43,360 INFO L290 TraceCheckUtils]: 36: Hoare triple {659#(<= 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] {663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:43,361 INFO L290 TraceCheckUtils]: 37: Hoare triple {663#(<= 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[] {546#false} is VALID [2022-04-07 19:31:43,361 INFO L290 TraceCheckUtils]: 38: Hoare triple {546#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {546#false} is VALID [2022-04-07 19:31:43,361 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:31:43,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 19:31:43,757 INFO L290 TraceCheckUtils]: 38: Hoare triple {546#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {546#false} is VALID [2022-04-07 19:31:43,757 INFO L290 TraceCheckUtils]: 37: Hoare triple {663#(<= 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[] {546#false} is VALID [2022-04-07 19:31:43,758 INFO L290 TraceCheckUtils]: 36: Hoare triple {659#(<= 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] {663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:31:43,759 INFO L272 TraceCheckUtils]: 35: Hoare triple {655#(= (+ (* 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] {659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:31:43,759 INFO L290 TraceCheckUtils]: 34: Hoare triple {682#(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[] {655#(= (+ (* 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:31:43,760 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {644#(not (= |__VERIFIER_assert_#in~cond| 0))} {545#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] {682#(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:31:43,761 INFO L290 TraceCheckUtils]: 32: Hoare triple {644#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {644#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:31:43,761 INFO L290 TraceCheckUtils]: 31: Hoare triple {695#(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[] {644#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:31:43,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {545#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] {695#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 19:31:43,762 INFO L272 TraceCheckUtils]: 29: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {545#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,762 INFO L290 TraceCheckUtils]: 27: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,762 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {545#true} {545#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] {545#true} is VALID [2022-04-07 19:31:43,762 INFO L290 TraceCheckUtils]: 25: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,762 INFO L290 TraceCheckUtils]: 24: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L290 TraceCheckUtils]: 23: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L272 TraceCheckUtils]: 22: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {545#true} {545#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] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L290 TraceCheckUtils]: 20: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L290 TraceCheckUtils]: 19: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,763 INFO L272 TraceCheckUtils]: 17: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {545#true} {545#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L290 TraceCheckUtils]: 15: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L290 TraceCheckUtils]: 14: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L290 TraceCheckUtils]: 13: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L272 TraceCheckUtils]: 12: Hoare triple {545#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {545#true} is VALID [2022-04-07 19:31:43,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {545#true} {545#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L290 TraceCheckUtils]: 9: Hoare triple {545#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L290 TraceCheckUtils]: 8: Hoare triple {545#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[] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L290 TraceCheckUtils]: 7: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L272 TraceCheckUtils]: 6: Hoare triple {545#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 1)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L290 TraceCheckUtils]: 5: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L272 TraceCheckUtils]: 4: Hoare triple {545#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {545#true} {545#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,766 INFO L290 TraceCheckUtils]: 2: Hoare triple {545#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,766 INFO L290 TraceCheckUtils]: 1: Hoare triple {545#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] {545#true} is VALID [2022-04-07 19:31:43,766 INFO L272 TraceCheckUtils]: 0: Hoare triple {545#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#true} is VALID [2022-04-07 19:31:43,766 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:31:43,766 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:43,766 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2045292290] [2022-04-07 19:31:43,766 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:31:43,767 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [169008700] [2022-04-07 19:31:43,767 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [169008700] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 19:31:43,767 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 19:31:43,767 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 19:31:43,767 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1783317823] [2022-04-07 19:31:43,767 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 19:31:43,768 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:31:43,768 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:43,768 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:31:43,793 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:31:43,793 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 19:31:43,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:43,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 19:31:43,793 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-07 19:31:43,794 INFO L87 Difference]: Start difference. First operand 34 states and 41 transitions. Second operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:31:44,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:44,123 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-07 19:31:44,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 19:31:44,123 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:31:44,123 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:31:44,124 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:31:44,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:31:44,126 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:31:44,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:31:44,127 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 19:31:44,171 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:31:44,172 INFO L225 Difference]: With dead ends: 32 [2022-04-07 19:31:44,172 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 19:31:44,172 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:31:44,173 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 23 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 19:31:44,173 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 89 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 19:31:44,174 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 19:31:44,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 19:31:44,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:31:44,174 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:31:44,174 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:31:44,174 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:31:44,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:44,175 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:31:44,175 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:31:44,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:44,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:44,175 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:31:44,175 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:31:44,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:44,175 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:31:44,175 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:31:44,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:44,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:44,175 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:31:44,175 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:31:44,176 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:31:44,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 19:31:44,176 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 39 [2022-04-07 19:31:44,176 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:31:44,176 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 19:31:44,176 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:31:44,176 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:31:44,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:44,178 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 19:31:44,206 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:31:44,379 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:31:44,382 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-04-07 19:31:44,383 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 19:31:44,386 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:31:44 BasicIcfg [2022-04-07 19:31:44,386 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 19:31:44,387 INFO L158 Benchmark]: Toolchain (without parser) took 8277.41ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 129.4MB in the beginning and 175.7MB in the end (delta: -46.3MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 19:31:44,387 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 180.4MB. Free memory was 145.7MB in the beginning and 145.6MB in the end (delta: 136.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 19:31:44,388 INFO L158 Benchmark]: CACSL2BoogieTranslator took 251.22ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 129.2MB in the beginning and 192.4MB in the end (delta: -63.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-04-07 19:31:44,388 INFO L158 Benchmark]: Boogie Preprocessor took 43.80ms. Allocated memory is still 217.1MB. Free memory was 192.4MB in the beginning and 190.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:31:44,388 INFO L158 Benchmark]: RCFGBuilder took 357.42ms. Allocated memory is still 217.1MB. Free memory was 190.8MB in the beginning and 177.7MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 19:31:44,389 INFO L158 Benchmark]: IcfgTransformer took 35.96ms. Allocated memory is still 217.1MB. Free memory was 177.7MB in the beginning and 175.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:31:44,389 INFO L158 Benchmark]: TraceAbstraction took 7583.12ms. Allocated memory is still 217.1MB. Free memory was 175.6MB in the beginning and 175.7MB in the end (delta: -104.8kB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 19:31:44,391 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.11ms. Allocated memory is still 180.4MB. Free memory was 145.7MB in the beginning and 145.6MB in the end (delta: 136.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 251.22ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 129.2MB in the beginning and 192.4MB in the end (delta: -63.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 43.80ms. Allocated memory is still 217.1MB. Free memory was 192.4MB in the beginning and 190.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 357.42ms. Allocated memory is still 217.1MB. Free memory was 190.8MB in the beginning and 177.7MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 35.96ms. Allocated memory is still 217.1MB. Free memory was 177.7MB in the beginning and 175.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 7583.12ms. Allocated memory is still 217.1MB. Free memory was 175.6MB in the beginning and 175.7MB in the end (delta: -104.8kB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 7.5s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 1.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 69 SdHoareTripleChecker+Valid, 0.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 56 mSDsluCounter, 225 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 132 mSDsCounter, 29 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 114 IncrementalHoareTripleChecker+Invalid, 143 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 29 mSolverCounterUnsat, 93 mSDtfsCounter, 114 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 161 GetRequests, 138 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=37occurred in iteration=0, InterpolantAutomatonStates: 14, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 3 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 5.6s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 172 ConstructedInterpolants, 0 QuantifiedInterpolants, 533 SizeOfPredicates, 12 NumberOfNonLiveVariables, 209 ConjunctsInSsa, 34 ConjunctsInUnsatCore, 5 InterpolantComputations, 2 PerfectInterpolantSequences, 113/124 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 19:31:44,411 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...