./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound50.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_valuebound50.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 0ac0f213d1d000e527ab073eb0dd4288784176d966909606abb71d9dc425fd71 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:25:00,914 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:25:00,916 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:25:00,934 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:25:00,934 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:25:00,935 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:25:00,936 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:25:00,937 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:25:00,939 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:25:00,939 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:25:00,940 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:25:00,941 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:25:00,941 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:25:00,942 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:25:00,943 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:25:00,943 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:25:00,944 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:25:00,945 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:25:00,946 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:25:00,947 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:25:00,948 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:25:00,949 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:25:00,950 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:25:00,950 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:25:00,952 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:25:00,952 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:25:00,952 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:25:00,953 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:25:00,953 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:25:00,954 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:25:00,954 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:25:00,955 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:25:00,955 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:25:00,956 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:25:00,956 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:25:00,957 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:25:00,957 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:25:00,958 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:25:00,958 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:25:00,959 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:25:00,959 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:25:00,960 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:25:00,973 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:25:00,973 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:25:00,974 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:25:00,974 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:25:00,974 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:25:00,975 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:25:00,975 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:25:00,975 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:25:00,975 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:25:00,975 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:25:00,976 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:25:00,977 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:25:00,977 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:25:00,978 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:25:00,978 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:25:00,979 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:25:00,979 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 -> 0ac0f213d1d000e527ab073eb0dd4288784176d966909606abb71d9dc425fd71 [2022-02-20 17:25:01,145 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:25:01,160 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:25:01,162 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:25:01,163 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:25:01,163 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:25:01,164 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound50.c [2022-02-20 17:25:01,217 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a82a0ea34/84e8eac49edc4316b3e643e517fcad83/FLAG5b66c37d5 [2022-02-20 17:25:01,531 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:25:01,532 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound50.c [2022-02-20 17:25:01,540 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a82a0ea34/84e8eac49edc4316b3e643e517fcad83/FLAG5b66c37d5 [2022-02-20 17:25:01,954 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a82a0ea34/84e8eac49edc4316b3e643e517fcad83 [2022-02-20 17:25:01,956 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:25:01,957 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:25:01,975 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:25:01,976 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:25:01,978 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:25:01,979 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:25:01" (1/1) ... [2022-02-20 17:25:01,981 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@249f8633 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:01, skipping insertion in model container [2022-02-20 17:25:01,981 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:25:01" (1/1) ... [2022-02-20 17:25:01,985 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:25:02,007 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:25:02,237 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_valuebound50.c[535,548] [2022-02-20 17:25:02,268 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:25:02,274 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:25:02,284 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_valuebound50.c[535,548] [2022-02-20 17:25:02,306 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:25:02,319 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:25:02,320 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02 WrapperNode [2022-02-20 17:25:02,320 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:25:02,321 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:25:02,322 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:25:02,322 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:25:02,326 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:25:02" (1/1) ... [2022-02-20 17:25:02,336 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:25:02" (1/1) ... [2022-02-20 17:25:02,354 INFO L137 Inliner]: procedures = 14, calls = 15, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 56 [2022-02-20 17:25:02,354 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:25:02,355 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:25:02,355 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:25:02,355 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:25:02,361 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,361 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,363 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,364 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,376 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,382 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,385 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,388 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:25:02,390 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:25:02,390 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:25:02,390 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:25:02,391 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (1/1) ... [2022-02-20 17:25:02,396 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:25:02,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:02,430 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:25:02,447 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:25:02,459 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:25:02,460 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:25:02,460 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:25:02,460 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:25:02,460 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:25:02,461 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:25:02,461 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:25:02,461 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:25:02,502 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:25:02,503 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:25:02,678 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:25:02,683 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:25:02,683 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 17:25:02,684 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:02 BoogieIcfgContainer [2022-02-20 17:25:02,684 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:25:02,685 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:25:02,686 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:25:02,688 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:25:02,688 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:25:01" (1/3) ... [2022-02-20 17:25:02,689 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@503dda5f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:25:02, skipping insertion in model container [2022-02-20 17:25:02,689 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:02" (2/3) ... [2022-02-20 17:25:02,689 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@503dda5f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:25:02, skipping insertion in model container [2022-02-20 17:25:02,689 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:02" (3/3) ... [2022-02-20 17:25:02,690 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound50.c [2022-02-20 17:25:02,693 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:25:02,694 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:25:02,724 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:25:02,731 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:25:02,734 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:25:02,754 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:25:02,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:25:02,759 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:02,759 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:25:02,760 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:02,767 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:02,767 INFO L85 PathProgramCache]: Analyzing trace with hash -2017412251, now seen corresponding path program 1 times [2022-02-20 17:25:02,775 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:02,776 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [603255953] [2022-02-20 17:25:02,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:02,777 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:02,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,876 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:25:02,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,898 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:25:02,900 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-02-20 17:25:02,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,912 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,913 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,913 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,913 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:25:02,914 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2022-02-20 17:25:02,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,927 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,927 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:25:02,928 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 17:25:02,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,943 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:25:02,943 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:25:02,943 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:25:02,943 INFO L272 TraceCheckUtils]: 2: Hoare triple {35#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 50 then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:02,944 INFO L290 TraceCheckUtils]: 3: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,944 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,944 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:25:02,945 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:25:02,945 INFO L272 TraceCheckUtils]: 8: Hoare triple {36#false} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 50 then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:02,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,950 INFO L290 TraceCheckUtils]: 10: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,951 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:25:02,951 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:25:02,951 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,951 INFO L290 TraceCheckUtils]: 15: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,952 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,952 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:25:02,953 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:25:02,953 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:02,953 INFO L290 TraceCheckUtils]: 20: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:02,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:02,954 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:25:02,954 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:25:02,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:25:02,955 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:25:02,955 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:25:02,955 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-02-20 17:25:02,955 INFO L290 TraceCheckUtils]: 28: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:25:02,956 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:02,957 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:02,958 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [603255953] [2022-02-20 17:25:02,958 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [603255953] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:25:02,959 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:25:02,959 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:25:02,960 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2071225462] [2022-02-20 17:25:02,961 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:25:02,964 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:25:02,966 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:02,968 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:25:02,997 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:02,997 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:25:02,997 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:03,015 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:25:03,016 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:25:03,018 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:25:03,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:03,105 INFO L93 Difference]: Finished difference Result 61 states and 100 transitions. [2022-02-20 17:25:03,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:25:03,105 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:25:03,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:03,106 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:25:03,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:25:03,118 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:25:03,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:25:03,125 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-02-20 17:25:03,225 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:25:03,235 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:25:03,235 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:25:03,238 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:25:03,241 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:25:03,246 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:25:03,257 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:25:03,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:25:03,266 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:03,267 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:25:03,268 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:25:03,268 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:25:03,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:03,271 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:25:03,272 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:03,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:03,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:03,273 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:25:03,273 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:25:03,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:03,276 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:25:03,276 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:03,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:03,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:03,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:03,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:03,277 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:25:03,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 36 transitions. [2022-02-20 17:25:03,280 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 36 transitions. Word has length 29 [2022-02-20 17:25:03,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:03,280 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 36 transitions. [2022-02-20 17:25:03,281 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:25:03,281 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:03,282 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:25:03,282 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:03,282 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:25:03,282 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:25:03,282 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:03,283 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:03,283 INFO L85 PathProgramCache]: Analyzing trace with hash 398101033, now seen corresponding path program 1 times [2022-02-20 17:25:03,283 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:03,283 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [32722899] [2022-02-20 17:25:03,284 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:03,284 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:03,301 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:25:03,301 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [73608930] [2022-02-20 17:25:03,302 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:03,302 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:03,302 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:03,303 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:25:03,331 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:25:03,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:03,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:25:06,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2022-02-20 17:25:06,558 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:25:06,975 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:25:06,975 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:25:06,975 INFO L272 TraceCheckUtils]: 2: Hoare triple {237#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 50 then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:06,975 INFO L290 TraceCheckUtils]: 3: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:06,978 INFO L290 TraceCheckUtils]: 4: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:06,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:06,978 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {237#true} {237#true} #87#return; {237#true} is VALID [2022-02-20 17:25:06,978 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:25:06,978 INFO L272 TraceCheckUtils]: 8: Hoare triple {237#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 50 then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:06,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:06,979 INFO L290 TraceCheckUtils]: 10: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:06,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:06,980 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {237#true} {237#true} #89#return; {237#true} is VALID [2022-02-20 17:25:06,980 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:25:06,981 INFO L290 TraceCheckUtils]: 14: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:06,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:06,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:06,981 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {237#true} {237#true} #91#return; {237#true} is VALID [2022-02-20 17:25:06,981 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:25:06,981 INFO L290 TraceCheckUtils]: 19: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:06,982 INFO L290 TraceCheckUtils]: 20: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:06,982 INFO L290 TraceCheckUtils]: 21: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:06,982 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {237#true} {237#true} #93#return; {237#true} is VALID [2022-02-20 17:25:08,988 WARN 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 UNKNOWN [2022-02-20 17:25:08,989 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:09,230 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:09,231 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:09,233 INFO L290 TraceCheckUtils]: 27: Hoare triple {322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {238#false} is VALID [2022-02-20 17:25:09,234 INFO L290 TraceCheckUtils]: 28: Hoare triple {238#false} assume !false; {238#false} is VALID [2022-02-20 17:25:09,234 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:09,234 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:25:09,234 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:09,234 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [32722899] [2022-02-20 17:25:09,234 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:09,234 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [73608930] [2022-02-20 17:25:09,235 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [73608930] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:25:09,235 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:25:09,235 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:25:09,235 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1656170792] [2022-02-20 17:25:09,235 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:25:09,236 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:09,236 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:09,236 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:10,866 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:10,867 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:25:10,867 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:10,867 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:25:10,867 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:25:10,868 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:15,777 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.01s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-02-20 17:25:15,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:15,805 INFO L93 Difference]: Finished difference Result 44 states and 57 transitions. [2022-02-20 17:25:15,805 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:25:15,805 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:15,805 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:15,806 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:15,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:15,808 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:15,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:15,809 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 57 transitions. [2022-02-20 17:25:19,896 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:19,898 INFO L225 Difference]: With dead ends: 44 [2022-02-20 17:25:19,898 INFO L226 Difference]: Without dead ends: 42 [2022-02-20 17:25:19,898 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:19,899 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 11 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:19,899 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 106 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-02-20 17:25:19,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-02-20 17:25:19,909 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-02-20 17:25:19,909 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:19,909 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:19,909 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:19,910 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:19,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:19,912 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:19,912 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:19,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:19,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:19,913 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:19,914 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:19,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:19,916 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:19,916 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:19,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:19,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:19,917 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:19,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:19,917 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:19,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 54 transitions. [2022-02-20 17:25:19,919 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 54 transitions. Word has length 29 [2022-02-20 17:25:19,919 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:19,919 INFO L470 AbstractCegarLoop]: Abstraction has 41 states and 54 transitions. [2022-02-20 17:25:19,919 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:19,919 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 54 transitions. [2022-02-20 17:25:19,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 17:25:19,920 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:19,920 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:19,938 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:20,120 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:20,122 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:20,122 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:20,122 INFO L85 PathProgramCache]: Analyzing trace with hash 744651016, now seen corresponding path program 1 times [2022-02-20 17:25:20,122 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:20,123 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [980189963] [2022-02-20 17:25:20,123 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:20,123 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:20,186 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:25:20,186 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [947756901] [2022-02-20 17:25:20,187 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:20,187 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:20,187 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:20,204 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:20,218 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:20,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:20,252 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 17:25:20,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:20,261 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:25:20,442 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:20,442 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:20,442 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 50 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:20,443 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,443 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,443 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,443 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:20,443 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:20,443 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 50 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:20,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,444 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,444 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,444 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:20,444 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:20,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,445 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,445 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,445 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:20,445 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:20,445 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,446 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,446 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:20,446 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:20,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:20,446 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:20,447 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:20,447 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:20,448 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:20,449 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:20,449 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:20,450 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:20,450 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:20,451 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:20,451 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:20,451 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:20,452 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:25:20,839 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:20,840 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:20,840 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:20,841 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:20,842 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:20,843 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:20,843 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:20,843 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:20,844 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:20,844 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:20,844 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:20,844 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:20,844 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:20,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,845 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:20,845 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:20,845 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,846 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,846 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:20,846 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:20,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,846 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,847 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,847 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 50 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:20,847 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:20,847 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:20,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:20,847 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:20,848 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:20,848 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 50 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:20,848 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:20,848 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:20,848 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:20,848 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:20,849 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [980189963] [2022-02-20 17:25:20,849 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:20,849 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [947756901] [2022-02-20 17:25:20,849 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [947756901] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:25:20,849 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:25:20,849 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-02-20 17:25:20,850 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1225225561] [2022-02-20 17:25:20,850 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:25:20,850 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:20,850 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:20,851 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:20,870 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:20,870 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:25:20,870 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:20,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:25:20,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:25:20,871 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:21,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:21,176 INFO L93 Difference]: Finished difference Result 41 states and 54 transitions. [2022-02-20 17:25:21,176 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:25:21,177 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:21,177 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:21,177 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:21,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:21,178 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:21,179 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:21,179 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2022-02-20 17:25:21,211 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:21,211 INFO L225 Difference]: With dead ends: 41 [2022-02-20 17:25:21,211 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 17:25:21,212 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:21,213 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:21,213 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:21,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 17:25:21,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 17:25:21,213 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:21,213 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:21,214 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:21,214 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:21,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:21,214 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:21,214 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:21,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:21,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:21,214 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:21,215 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:21,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:21,215 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:21,215 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:21,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:21,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:21,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:21,215 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:21,215 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:21,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 17:25:21,215 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 35 [2022-02-20 17:25:21,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:21,215 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 17:25:21,216 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:21,216 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:21,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:21,218 INFO L764 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:25:21,237 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:21,427 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:21,429 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 17:25:21,464 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:21,464 INFO L861 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-02-20 17:25:21,464 INFO L858 garLoopResultBuilder]: For program point L23-1(line 23) no Hoare annotation was computed. [2022-02-20 17:25:21,464 INFO L858 garLoopResultBuilder]: For program point L48-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:21,464 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:21,464 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:21,465 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:21,465 INFO L858 garLoopResultBuilder]: For program point L36-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:21,465 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 17:25:21,465 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 17:25:21,465 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 17:25:21,465 INFO L858 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-02-20 17:25:21,465 INFO L858 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-02-20 17:25:21,465 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:21,466 INFO L858 garLoopResultBuilder]: For program point L49-1(lines 48 54) no Hoare annotation was computed. [2022-02-20 17:25:21,466 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:21,466 INFO L858 garLoopResultBuilder]: For program point L41-1(lines 40 46) no Hoare annotation was computed. [2022-02-20 17:25:21,466 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 17:25:21,466 INFO L861 garLoopResultBuilder]: At program point L58(lines 19 59) the Hoare annotation is: true [2022-02-20 17:25:21,466 INFO L861 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-02-20 17:25:21,466 INFO L861 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: true [2022-02-20 17:25:21,467 INFO L861 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: true [2022-02-20 17:25:21,467 INFO L861 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-02-20 17:25:21,467 INFO L858 garLoopResultBuilder]: For program point L9(line 9) no Hoare annotation was computed. [2022-02-20 17:25:21,467 INFO L858 garLoopResultBuilder]: For program point L9-2(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:21,467 INFO L858 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:21,467 INFO L861 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-02-20 17:25:21,467 INFO L858 garLoopResultBuilder]: For program point L13(lines 13 14) no Hoare annotation was computed. [2022-02-20 17:25:21,467 INFO L858 garLoopResultBuilder]: For program point L12(lines 12 15) no Hoare annotation was computed. [2022-02-20 17:25:21,468 INFO L858 garLoopResultBuilder]: For program point L12-2(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:21,468 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:21,468 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) no Hoare annotation was computed. [2022-02-20 17:25:21,470 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-02-20 17:25:21,471 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:21,473 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:21,474 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:21,475 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:21,476 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:21,476 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:21,476 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:21,476 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:21,477 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:21,477 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:21,477 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:21,478 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:21,478 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:21,484 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 05:25:21 BoogieIcfgContainer [2022-02-20 17:25:21,485 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 17:25:21,485 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 17:25:21,485 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 17:25:21,485 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 17:25:21,486 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:02" (3/4) ... [2022-02-20 17:25:21,487 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 17:25:21,491 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure assume_abort_if_not [2022-02-20 17:25:21,491 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure __VERIFIER_assert [2022-02-20 17:25:21,493 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 13 nodes and edges [2022-02-20 17:25:21,493 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2022-02-20 17:25:21,494 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 17:25:21,494 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 17:25:21,517 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 17:25:21,517 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 17:25:21,518 INFO L158 Benchmark]: Toolchain (without parser) took 19561.26ms. Allocated memory was 92.3MB in the beginning and 125.8MB in the end (delta: 33.6MB). Free memory was 59.0MB in the beginning and 53.6MB in the end (delta: 5.4MB). Peak memory consumption was 38.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,518 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 92.3MB. Free memory was 51.3MB in the beginning and 51.3MB in the end (delta: 39.8kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:21,518 INFO L158 Benchmark]: CACSL2BoogieTranslator took 345.44ms. Allocated memory was 92.3MB in the beginning and 125.8MB in the end (delta: 33.6MB). Free memory was 58.9MB in the beginning and 99.7MB in the end (delta: -40.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,519 INFO L158 Benchmark]: Boogie Procedure Inliner took 32.74ms. Allocated memory is still 125.8MB. Free memory was 99.7MB in the beginning and 98.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,519 INFO L158 Benchmark]: Boogie Preprocessor took 34.05ms. Allocated memory is still 125.8MB. Free memory was 98.2MB in the beginning and 96.9MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:21,519 INFO L158 Benchmark]: RCFGBuilder took 294.89ms. Allocated memory is still 125.8MB. Free memory was 96.9MB in the beginning and 85.0MB in the end (delta: 11.9MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,519 INFO L158 Benchmark]: TraceAbstraction took 18799.33ms. Allocated memory is still 125.8MB. Free memory was 84.3MB in the beginning and 56.7MB in the end (delta: 27.6MB). Peak memory consumption was 30.6MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,520 INFO L158 Benchmark]: Witness Printer took 32.03ms. Allocated memory is still 125.8MB. Free memory was 56.7MB in the beginning and 53.6MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:21,521 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.18ms. Allocated memory is still 92.3MB. Free memory was 51.3MB in the beginning and 51.3MB in the end (delta: 39.8kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 345.44ms. Allocated memory was 92.3MB in the beginning and 125.8MB in the end (delta: 33.6MB). Free memory was 58.9MB in the beginning and 99.7MB in the end (delta: -40.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 32.74ms. Allocated memory is still 125.8MB. Free memory was 99.7MB in the beginning and 98.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 34.05ms. Allocated memory is still 125.8MB. Free memory was 98.2MB in the beginning and 96.9MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 294.89ms. Allocated memory is still 125.8MB. Free memory was 96.9MB in the beginning and 85.0MB in the end (delta: 11.9MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 18799.33ms. Allocated memory is still 125.8MB. Free memory was 84.3MB in the beginning and 56.7MB in the end (delta: 27.6MB). Peak memory consumption was 30.6MB. Max. memory is 16.1GB. * Witness Printer took 32.03ms. Allocated memory is still 125.8MB. Free memory was 56.7MB in the beginning and 53.6MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. 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: 18.7s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 9.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 31 SdHoareTripleChecker+Valid, 1.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 26 mSDsluCounter, 284 SdHoareTripleChecker+Invalid, 1.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 193 mSDsCounter, 13 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 106 IncrementalHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 13 mSolverCounterUnsat, 91 mSDtfsCounter, 106 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 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.0s 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, 6.6s 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:21,538 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