./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 5343b340ea8da46bc6acd6408dd3dbd3223330cf8901c5f3b9950638a460ce9a --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:24:55,908 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:24:55,910 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:24:55,952 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:24:55,953 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:24:55,956 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:24:55,957 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:24:55,960 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:24:55,961 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:24:55,965 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:24:55,966 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:24:55,967 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:24:55,968 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:24:55,970 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:24:55,971 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:24:55,973 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:24:55,974 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:24:55,975 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:24:55,977 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:24:55,982 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:24:55,983 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:24:55,984 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:24:55,985 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:24:55,986 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:24:55,992 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:24:55,992 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:24:55,992 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:24:55,994 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:24:55,994 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:24:55,995 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:24:55,995 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:24:55,996 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:24:55,997 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:24:55,999 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:24:56,000 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:24:56,000 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:24:56,001 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:24:56,001 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:24:56,001 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:24:56,002 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:24:56,002 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:24:56,003 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 17:24:56,033 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:24:56,033 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:24:56,034 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:24:56,034 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:24:56,034 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:24:56,035 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:24:56,035 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:24:56,036 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:24:56,036 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:24:56,036 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:24:56,037 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:24:56,037 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:24:56,037 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:24:56,037 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:24:56,037 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:24:56,038 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:24:56,039 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:24:56,039 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:24:56,039 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:24:56,039 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:56,040 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:24:56,040 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:24:56,041 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:24:56,041 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:24:56,041 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:24:56,041 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:24:56,042 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:24:56,042 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:24:56,042 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 5343b340ea8da46bc6acd6408dd3dbd3223330cf8901c5f3b9950638a460ce9a [2022-02-20 17:24:56,271 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:24:56,297 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:24:56,300 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:24:56,301 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:24:56,301 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:24:56,302 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c [2022-02-20 17:24:56,360 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/73ac4cb8f/ff831e34e0754c15934cceb2f1b2106a/FLAGc4922b5e5 [2022-02-20 17:24:56,694 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:24:56,694 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c [2022-02-20 17:24:56,699 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/73ac4cb8f/ff831e34e0754c15934cceb2f1b2106a/FLAGc4922b5e5 [2022-02-20 17:24:57,122 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/73ac4cb8f/ff831e34e0754c15934cceb2f1b2106a [2022-02-20 17:24:57,124 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:24:57,126 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:24:57,129 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:57,130 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:24:57,133 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:24:57,134 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,135 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@455f5821 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57, skipping insertion in model container [2022-02-20 17:24:57,135 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,141 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:24:57,156 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:24:57,301 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c[535,548] [2022-02-20 17:24:57,320 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:57,327 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:24:57,337 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound20.c[535,548] [2022-02-20 17:24:57,347 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:57,358 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:24:57,359 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57 WrapperNode [2022-02-20 17:24:57,359 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:57,360 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:57,360 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:24:57,360 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:24:57,367 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,372 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,390 INFO L137 Inliner]: procedures = 14, calls = 15, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 56 [2022-02-20 17:24:57,390 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:57,391 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:24:57,391 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:24:57,391 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:24:57,397 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,398 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,399 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,399 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,402 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,406 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,407 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,408 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:24:57,409 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:24:57,409 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:24:57,409 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:24:57,410 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (1/1) ... [2022-02-20 17:24:57,416 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:57,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:57,434 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-02-20 17:24:57,457 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-02-20 17:24:57,476 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:24:57,476 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:24:57,477 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:24:57,477 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:24:57,477 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:24:57,477 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:24:57,477 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:24:57,477 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:24:57,529 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:24:57,530 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:24:57,675 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:24:57,681 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:24:57,681 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 17:24:57,682 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:57 BoogieIcfgContainer [2022-02-20 17:24:57,683 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:24:57,684 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:24:57,684 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:24:57,687 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:24:57,687 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:24:57" (1/3) ... [2022-02-20 17:24:57,687 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@171b835c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:57, skipping insertion in model container [2022-02-20 17:24:57,688 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:57" (2/3) ... [2022-02-20 17:24:57,688 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@171b835c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:57, skipping insertion in model container [2022-02-20 17:24:57,688 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:57" (3/3) ... [2022-02-20 17:24:57,689 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound20.c [2022-02-20 17:24:57,693 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:24:57,693 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:24:57,728 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:24:57,734 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 17:24:57,734 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:24:57,750 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:24:57,754 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:24:57,754 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:57,755 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:57,755 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:57,759 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:57,759 INFO L85 PathProgramCache]: Analyzing trace with hash -2017412251, now seen corresponding path program 1 times [2022-02-20 17:24:57,766 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:57,767 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [26446138] [2022-02-20 17:24:57,775 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:57,776 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:57,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:57,973 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:24:57,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:57,988 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:57,989 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:57,989 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:57,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:24:57,990 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-02-20 17:24:57,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:57,998 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:57,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:57,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:57,999 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:24:58,000 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2022-02-20 17:24:58,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:58,007 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,008 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,008 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:24:58,008 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 17:24:58,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:58,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:24:58,017 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {35#true} is VALID [2022-02-20 17:24:58,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {35#true} is VALID [2022-02-20 17:24:58,018 INFO L272 TraceCheckUtils]: 2: Hoare triple {35#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 20 then 1 else 0)); {35#true} is VALID [2022-02-20 17:24:58,018 INFO L290 TraceCheckUtils]: 3: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,018 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,019 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:24:58,019 INFO L290 TraceCheckUtils]: 7: Hoare triple {36#false} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {36#false} is VALID [2022-02-20 17:24:58,020 INFO L272 TraceCheckUtils]: 8: Hoare triple {36#false} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 20 then 1 else 0)); {35#true} is VALID [2022-02-20 17:24:58,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,021 INFO L290 TraceCheckUtils]: 10: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,021 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,022 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:24:58,022 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {35#true} is VALID [2022-02-20 17:24:58,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,023 INFO L290 TraceCheckUtils]: 15: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,023 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:24:58,023 INFO L272 TraceCheckUtils]: 18: Hoare triple {36#false} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {35#true} is VALID [2022-02-20 17:24:58,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:58,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:58,024 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:58,025 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:24:58,025 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {36#false} is VALID [2022-02-20 17:24:58,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:24:58,026 INFO L272 TraceCheckUtils]: 25: Hoare triple {36#false} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {36#false} is VALID [2022-02-20 17:24:58,026 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:24:58,026 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-02-20 17:24:58,026 INFO L290 TraceCheckUtils]: 28: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:24:58,027 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:24:58,028 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:58,028 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [26446138] [2022-02-20 17:24:58,029 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [26446138] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:58,029 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:58,029 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:24:58,031 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1101886125] [2022-02-20 17:24:58,031 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:58,035 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) Word has length 29 [2022-02-20 17:24:58,037 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:58,040 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:24:58,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:58,065 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:24:58,065 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:58,082 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:24:58,082 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:24:58,085 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:24:58,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:58,141 INFO L93 Difference]: Finished difference Result 61 states and 100 transitions. [2022-02-20 17:24:58,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:24:58,141 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) Word has length 29 [2022-02-20 17:24:58,142 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:58,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:24:58,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:24:58,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:24:58,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:24:58,157 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-02-20 17:24:58,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:58,260 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:24:58,260 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:24:58,262 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:24:58,265 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:58,266 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:58,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:24:58,289 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:24:58,290 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:58,290 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:58,291 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:58,292 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:58,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:58,299 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:24:58,299 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:24:58,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:58,300 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:58,301 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 28 states. [2022-02-20 17:24:58,301 INFO L87 Difference]: Start difference. First operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 28 states. [2022-02-20 17:24:58,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:58,304 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:24:58,304 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:24:58,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:58,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:58,305 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:58,305 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:58,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:58,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 36 transitions. [2022-02-20 17:24:58,308 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 36 transitions. Word has length 29 [2022-02-20 17:24:58,309 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:58,309 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 36 transitions. [2022-02-20 17:24:58,309 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:24:58,309 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:24:58,312 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:24:58,312 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:58,313 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:58,313 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:24:58,313 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:58,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:58,315 INFO L85 PathProgramCache]: Analyzing trace with hash 398101033, now seen corresponding path program 1 times [2022-02-20 17:24:58,316 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:58,316 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [9241555] [2022-02-20 17:24:58,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:58,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:58,350 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:58,356 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1913848958] [2022-02-20 17:24:58,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:58,357 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:58,357 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:58,363 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-02-20 17:24:58,407 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-02-20 17:24:58,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:58,436 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:24:58,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:58,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:59,078 INFO L290 TraceCheckUtils]: 0: Hoare triple {237#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {237#true} is VALID [2022-02-20 17:24:59,078 INFO L290 TraceCheckUtils]: 1: Hoare triple {237#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {237#true} is VALID [2022-02-20 17:24:59,081 INFO L272 TraceCheckUtils]: 2: Hoare triple {237#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 20 then 1 else 0)); {237#true} is VALID [2022-02-20 17:24:59,082 INFO L290 TraceCheckUtils]: 3: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:24:59,083 INFO L290 TraceCheckUtils]: 4: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:24:59,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:24:59,084 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {237#true} {237#true} #87#return; {237#true} is VALID [2022-02-20 17:24:59,084 INFO L290 TraceCheckUtils]: 7: Hoare triple {237#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {237#true} is VALID [2022-02-20 17:24:59,084 INFO L272 TraceCheckUtils]: 8: Hoare triple {237#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 20 then 1 else 0)); {237#true} is VALID [2022-02-20 17:24:59,085 INFO L290 TraceCheckUtils]: 9: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:24:59,085 INFO L290 TraceCheckUtils]: 10: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:24:59,085 INFO L290 TraceCheckUtils]: 11: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:24:59,086 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {237#true} {237#true} #89#return; {237#true} is VALID [2022-02-20 17:24:59,086 INFO L272 TraceCheckUtils]: 13: Hoare triple {237#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {237#true} is VALID [2022-02-20 17:24:59,087 INFO L290 TraceCheckUtils]: 14: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:24:59,087 INFO L290 TraceCheckUtils]: 15: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:24:59,087 INFO L290 TraceCheckUtils]: 16: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:24:59,088 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {237#true} {237#true} #91#return; {237#true} is VALID [2022-02-20 17:24:59,088 INFO L272 TraceCheckUtils]: 18: Hoare triple {237#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {237#true} is VALID [2022-02-20 17:24:59,088 INFO L290 TraceCheckUtils]: 19: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:24:59,089 INFO L290 TraceCheckUtils]: 20: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:24:59,089 INFO L290 TraceCheckUtils]: 21: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:24:59,089 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {237#true} {237#true} #93#return; {237#true} is VALID [2022-02-20 17:25:00,018 INFO L290 TraceCheckUtils]: 23: Hoare triple {237#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:25:00,019 INFO L290 TraceCheckUtils]: 24: Hoare triple {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} assume !false; {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:25:01,806 INFO L272 TraceCheckUtils]: 25: Hoare triple {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:01,810 INFO L290 TraceCheckUtils]: 26: Hoare triple {318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:01,810 INFO L290 TraceCheckUtils]: 27: Hoare triple {322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {238#false} is VALID [2022-02-20 17:25:01,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {238#false} assume !false; {238#false} is VALID [2022-02-20 17:25:01,811 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:01,811 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:25:01,811 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:01,811 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [9241555] [2022-02-20 17:25:01,811 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:01,811 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1913848958] [2022-02-20 17:25:01,812 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1913848958] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:25:01,812 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:25:01,812 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:25:01,813 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [954902371] [2022-02-20 17:25:01,813 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:25:01,813 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-02-20 17:25:01,814 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:01,814 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:03,343 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:03,344 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:25:03,344 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:03,345 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:25:03,345 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:25:03,345 INFO L87 Difference]: Start difference. First operand 28 states and 36 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:09,452 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.33s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-02-20 17:25:11,697 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-02-20 17:25:11,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:11,767 INFO L93 Difference]: Finished difference Result 44 states and 57 transitions. [2022-02-20 17:25:11,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:25:11,767 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-02-20 17:25:11,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:11,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:11,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:11,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:11,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:11,774 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 57 transitions. [2022-02-20 17:25:16,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 56 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:16,030 INFO L225 Difference]: With dead ends: 44 [2022-02-20 17:25:16,030 INFO L226 Difference]: Without dead ends: 42 [2022-02-20 17:25:16,030 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:25:16,031 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 11 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.7s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:16,032 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 106 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 1 Unknown, 0 Unchecked, 3.7s Time] [2022-02-20 17:25:16,033 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-02-20 17:25:16,040 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-02-20 17:25:16,041 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:16,041 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:16,042 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:16,042 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:16,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:16,050 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:16,050 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:16,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:16,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:16,052 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 42 states. [2022-02-20 17:25:16,052 INFO L87 Difference]: Start difference. First operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 42 states. [2022-02-20 17:25:16,055 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:16,055 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:16,056 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:16,056 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:16,056 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:16,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:16,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:16,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:16,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 54 transitions. [2022-02-20 17:25:16,063 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 54 transitions. Word has length 29 [2022-02-20 17:25:16,063 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:16,063 INFO L470 AbstractCegarLoop]: Abstraction has 41 states and 54 transitions. [2022-02-20 17:25:16,064 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:16,064 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 54 transitions. [2022-02-20 17:25:16,065 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 17:25:16,065 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:16,065 INFO L514 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] [2022-02-20 17:25:16,083 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 17:25:16,266 WARN L452 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-02-20 17:25:16,267 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:16,267 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:16,267 INFO L85 PathProgramCache]: Analyzing trace with hash 744651016, now seen corresponding path program 1 times [2022-02-20 17:25:16,268 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:16,268 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [338075402] [2022-02-20 17:25:16,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:16,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:16,296 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:25:16,297 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1937989867] [2022-02-20 17:25:16,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:16,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:16,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:16,300 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-02-20 17:25:16,301 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-02-20 17:25:16,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:16,355 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 17:25:16,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:16,370 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:25:16,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {536#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {536#true} is VALID [2022-02-20 17:25:16,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {536#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {536#true} is VALID [2022-02-20 17:25:16,612 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 20 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:16,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:16,612 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:16,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:16,613 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:16,613 INFO L290 TraceCheckUtils]: 7: Hoare triple {536#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {536#true} is VALID [2022-02-20 17:25:16,613 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 20 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:16,613 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:16,614 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:16,615 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:16,615 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:16,615 INFO L272 TraceCheckUtils]: 13: Hoare triple {536#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:16,615 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:16,615 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:16,616 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:16,616 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:16,616 INFO L272 TraceCheckUtils]: 18: Hoare triple {536#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:16,616 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:16,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:16,617 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:16,617 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:16,617 INFO L290 TraceCheckUtils]: 23: Hoare triple {536#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {536#true} is VALID [2022-02-20 17:25:16,617 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:16,618 INFO L272 TraceCheckUtils]: 25: Hoare triple {536#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:16,620 INFO L290 TraceCheckUtils]: 26: Hoare triple {536#true} ~cond := #in~cond; {619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:16,621 INFO L290 TraceCheckUtils]: 27: Hoare triple {619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:16,622 INFO L290 TraceCheckUtils]: 28: Hoare triple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:16,623 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} {536#true} #95#return; {630#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:16,623 INFO L290 TraceCheckUtils]: 30: Hoare triple {630#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} assume !(0 != main_~r~0#1); {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:16,624 INFO L272 TraceCheckUtils]: 31: Hoare triple {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {638#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:16,625 INFO L290 TraceCheckUtils]: 32: Hoare triple {638#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {642#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:16,625 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:16,627 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:16,627 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:16,627 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:25:17,122 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:17,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:17,123 INFO L290 TraceCheckUtils]: 32: Hoare triple {638#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {642#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:17,125 INFO L272 TraceCheckUtils]: 31: Hoare triple {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {638#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:17,125 INFO L290 TraceCheckUtils]: 30: Hoare triple {661#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} assume !(0 != main_~r~0#1); {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:17,128 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} {536#true} #95#return; {661#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} is VALID [2022-02-20 17:25:17,128 INFO L290 TraceCheckUtils]: 28: Hoare triple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:17,129 INFO L290 TraceCheckUtils]: 27: Hoare triple {674#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:17,129 INFO L290 TraceCheckUtils]: 26: Hoare triple {536#true} ~cond := #in~cond; {674#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:25:17,130 INFO L272 TraceCheckUtils]: 25: Hoare triple {536#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:17,130 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:17,130 INFO L290 TraceCheckUtils]: 23: Hoare triple {536#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {536#true} is VALID [2022-02-20 17:25:17,130 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:17,130 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:17,131 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:17,131 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:17,131 INFO L272 TraceCheckUtils]: 18: Hoare triple {536#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:17,131 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:17,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:17,132 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:17,132 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:17,132 INFO L272 TraceCheckUtils]: 13: Hoare triple {536#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:17,132 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:17,132 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:17,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:17,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:17,133 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 20 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:17,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {536#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {536#true} is VALID [2022-02-20 17:25:17,134 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:17,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:17,134 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:17,134 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:17,134 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 20 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:17,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {536#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {536#true} is VALID [2022-02-20 17:25:17,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {536#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {536#true} is VALID [2022-02-20 17:25:17,135 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:17,135 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:17,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [338075402] [2022-02-20 17:25:17,136 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:17,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1937989867] [2022-02-20 17:25:17,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1937989867] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:25:17,136 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:25:17,136 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-02-20 17:25:17,137 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [64892125] [2022-02-20 17:25:17,137 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:25:17,137 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) Word has length 35 [2022-02-20 17:25:17,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:17,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:17,162 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:17,162 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:25:17,163 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:17,163 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:25:17,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:25:17,164 INFO L87 Difference]: Start difference. First operand 41 states and 54 transitions. Second operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:17,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:17,528 INFO L93 Difference]: Finished difference Result 41 states and 54 transitions. [2022-02-20 17:25:17,528 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:25:17,528 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) Word has length 35 [2022-02-20 17:25:17,528 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:17,529 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:17,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:17,530 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:17,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:17,532 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2022-02-20 17:25:17,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:17,570 INFO L225 Difference]: With dead ends: 41 [2022-02-20 17:25:17,570 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 17:25:17,571 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 59 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-02-20 17:25:17,572 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 15 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 70 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:17,572 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 138 Invalid, 70 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:25:17,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 17:25:17,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 17:25:17,573 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:17,574 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-02-20 17:25:17,574 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-02-20 17:25:17,574 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-02-20 17:25:17,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:17,574 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:17,574 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:17,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:17,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:17,575 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-02-20 17:25:17,575 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-02-20 17:25:17,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:17,575 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:17,576 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:17,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:17,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:17,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:17,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:17,576 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-02-20 17:25:17,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 17:25:17,577 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 35 [2022-02-20 17:25:17,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:17,577 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 17:25:17,577 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:17,578 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:17,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:17,580 INFO L764 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:25:17,605 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-02-20 17:25:17,803 WARN L452 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-02-20 17:25:17,805 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 17:25:17,853 INFO L854 garLoopResultBuilder]: At program point L35-2(lines 35 55) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~A~0#1| 4)) (.cse1 (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|)) (.cse2 (* 2 |ULTIMATE.start_main_~u~0#1|)) (.cse3 (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))) (and (= (+ .cse0 (* |ULTIMATE.start_main_~r~0#1| 4) .cse1 .cse2) .cse3) (= (+ .cse0 .cse1 .cse2) .cse3))) [2022-02-20 17:25:17,854 INFO L861 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-02-20 17:25:17,854 INFO L858 garLoopResultBuilder]: For program point L23-1(line 23) no Hoare annotation was computed. [2022-02-20 17:25:17,854 INFO L858 garLoopResultBuilder]: For program point L48-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:17,854 INFO L854 garLoopResultBuilder]: At program point L48-2(lines 35 55) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:17,854 INFO L854 garLoopResultBuilder]: At program point L40-2(lines 40 46) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:17,855 INFO L854 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:17,855 INFO L858 garLoopResultBuilder]: For program point L36-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:17,855 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 17:25:17,855 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 17:25:17,855 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 17:25:17,855 INFO L858 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-02-20 17:25:17,856 INFO L858 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-02-20 17:25:17,856 INFO L854 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:17,856 INFO L858 garLoopResultBuilder]: For program point L49-1(lines 48 54) no Hoare annotation was computed. [2022-02-20 17:25:17,856 INFO L854 garLoopResultBuilder]: At program point L41(line 41) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:17,856 INFO L858 garLoopResultBuilder]: For program point L41-1(lines 40 46) no Hoare annotation was computed. [2022-02-20 17:25:17,856 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 17:25:17,857 INFO L861 garLoopResultBuilder]: At program point L58(lines 19 59) the Hoare annotation is: true [2022-02-20 17:25:17,857 INFO L861 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-02-20 17:25:17,857 INFO L861 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: true [2022-02-20 17:25:17,857 INFO L861 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: true [2022-02-20 17:25:17,857 INFO L861 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-02-20 17:25:17,857 INFO L858 garLoopResultBuilder]: For program point L9(line 9) no Hoare annotation was computed. [2022-02-20 17:25:17,857 INFO L858 garLoopResultBuilder]: For program point L9-2(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:17,858 INFO L858 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:17,858 INFO L861 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-02-20 17:25:17,858 INFO L858 garLoopResultBuilder]: For program point L13(lines 13 14) no Hoare annotation was computed. [2022-02-20 17:25:17,858 INFO L858 garLoopResultBuilder]: For program point L12(lines 12 15) no Hoare annotation was computed. [2022-02-20 17:25:17,858 INFO L858 garLoopResultBuilder]: For program point L12-2(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:17,858 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:17,859 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) no Hoare annotation was computed. [2022-02-20 17:25:17,861 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-02-20 17:25:17,862 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:25:17,865 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 17:25:17,865 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:17,865 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:17,865 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:17,866 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:17,867 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:17,868 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:17,869 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:17,869 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:17,870 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:17,870 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:17,870 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:17,871 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:17,872 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:17,872 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:17,872 INFO L163 areAnnotationChecker]: CFG has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-02-20 17:25:17,879 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 05:25:17 BoogieIcfgContainer [2022-02-20 17:25:17,879 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 17:25:17,880 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 17:25:17,880 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 17:25:17,880 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 17:25:17,881 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:57" (3/4) ... [2022-02-20 17:25:17,883 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 17:25:17,887 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure assume_abort_if_not [2022-02-20 17:25:17,887 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure __VERIFIER_assert [2022-02-20 17:25:17,890 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 13 nodes and edges [2022-02-20 17:25:17,890 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2022-02-20 17:25:17,891 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 17:25:17,891 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 17:25:17,918 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 17:25:17,918 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 17:25:17,920 INFO L158 Benchmark]: Toolchain (without parser) took 20793.40ms. Allocated memory was 98.6MB in the beginning and 119.5MB in the end (delta: 21.0MB). Free memory was 65.9MB in the beginning and 42.5MB in the end (delta: 23.4MB). Peak memory consumption was 45.5MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,920 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 98.6MB. Free memory is still 53.7MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:17,920 INFO L158 Benchmark]: CACSL2BoogieTranslator took 229.79ms. Allocated memory is still 98.6MB. Free memory was 65.7MB in the beginning and 72.2MB in the end (delta: -6.5MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,921 INFO L158 Benchmark]: Boogie Procedure Inliner took 30.48ms. Allocated memory is still 98.6MB. Free memory was 72.2MB in the beginning and 70.5MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,921 INFO L158 Benchmark]: Boogie Preprocessor took 17.40ms. Allocated memory is still 98.6MB. Free memory was 70.5MB in the beginning and 69.4MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:17,921 INFO L158 Benchmark]: RCFGBuilder took 273.85ms. Allocated memory is still 98.6MB. Free memory was 69.4MB in the beginning and 57.9MB in the end (delta: 11.6MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,922 INFO L158 Benchmark]: TraceAbstraction took 20195.62ms. Allocated memory was 98.6MB in the beginning and 119.5MB in the end (delta: 21.0MB). Free memory was 57.2MB in the beginning and 45.6MB in the end (delta: 11.6MB). Peak memory consumption was 33.9MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,922 INFO L158 Benchmark]: Witness Printer took 38.71ms. Allocated memory is still 119.5MB. Free memory was 45.6MB in the beginning and 42.5MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 17:25:17,924 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.19ms. Allocated memory is still 98.6MB. Free memory is still 53.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 229.79ms. Allocated memory is still 98.6MB. Free memory was 65.7MB in the beginning and 72.2MB in the end (delta: -6.5MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 30.48ms. Allocated memory is still 98.6MB. Free memory was 72.2MB in the beginning and 70.5MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 17.40ms. Allocated memory is still 98.6MB. Free memory was 70.5MB in the beginning and 69.4MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 273.85ms. Allocated memory is still 98.6MB. Free memory was 69.4MB in the beginning and 57.9MB in the end (delta: 11.6MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 20195.62ms. Allocated memory was 98.6MB in the beginning and 119.5MB in the end (delta: 21.0MB). Free memory was 57.2MB in the beginning and 45.6MB in the end (delta: 11.6MB). Peak memory consumption was 33.9MB. Max. memory is 16.1GB. * Witness Printer took 38.71ms. Allocated memory is still 119.5MB. Free memory was 45.6MB in the beginning and 42.5MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * 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 3 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 20.1s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 13.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 31 SdHoareTripleChecker+Valid, 3.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 26 mSDsluCounter, 284 SdHoareTripleChecker+Invalid, 3.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 193 mSDsCounter, 12 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 106 IncrementalHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 12 mSolverCounterUnsat, 91 mSDtfsCounter, 106 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 113 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=41occurred in iteration=2, InterpolantAutomatonStates: 13, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 3 MinimizatonAttempts, 1 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 13 LocationsWithAnnotation, 29 PreInvPairs, 44 NumberOfFragments, 152 HoareAnnotationTreeSize, 29 FomulaSimplifications, 250 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 13 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 4.3s InterpolantComputationTime, 93 NumberOfCodeBlocks, 93 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 124 ConstructedInterpolants, 0 QuantifiedInterpolants, 287 SizeOfPredicates, 9 NumberOfNonLiveVariables, 177 ConjunctsInSsa, 21 ConjunctsInUnsatCore, 4 InterpolantComputations, 2 PerfectInterpolantSequences, 98/100 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: A * 4 + r * 4 + v * v + 2 * u == 2 * v + u * u - InvariantResult [Line: 40]: Loop Invariant Derived loop invariant: A * 4 + r * 4 + v * v + 2 * u == 2 * v + u * u - InvariantResult [Line: 19]: Loop Invariant Derived loop invariant: 1 RESULT: Ultimate proved your program to be correct! [2022-02-20 17:25:17,946 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... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE