./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/loops/eureka_05.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 6c24879c Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -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/AutomizerTermination.xml -i ../sv-benchmarks/c/loops/eureka_05.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-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(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 3f12ca1e314a03dfb1c8beadd0c1a180c2d2339dd5f3109d5999df06d52395ab --- Real Ultimate output --- This is Ultimate 0.2.2-?-6c24879 [2022-07-13 03:57:57,930 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-13 03:57:57,932 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-13 03:57:57,969 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-13 03:57:57,970 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-13 03:57:57,971 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-13 03:57:57,972 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-13 03:57:57,974 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-13 03:57:57,975 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-13 03:57:57,978 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-13 03:57:57,979 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-13 03:57:57,980 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-13 03:57:57,981 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-13 03:57:57,982 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-13 03:57:57,983 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-13 03:57:57,985 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-13 03:57:57,985 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-13 03:57:57,986 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-13 03:57:57,987 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-13 03:57:57,992 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-13 03:57:57,993 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-13 03:57:57,994 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-13 03:57:57,995 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-13 03:57:57,996 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-13 03:57:57,997 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-13 03:57:58,002 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-13 03:57:58,002 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-13 03:57:58,003 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-13 03:57:58,004 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-13 03:57:58,004 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-13 03:57:58,005 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-13 03:57:58,005 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-13 03:57:58,006 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-13 03:57:58,007 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-13 03:57:58,007 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-13 03:57:58,008 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-13 03:57:58,008 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-13 03:57:58,008 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-13 03:57:58,008 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-13 03:57:58,009 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-13 03:57:58,009 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-13 03:57:58,010 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-13 03:57:58,011 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2022-07-13 03:57:58,034 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-13 03:57:58,035 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-13 03:57:58,035 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-13 03:57:58,035 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-13 03:57:58,037 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-13 03:57:58,037 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-13 03:57:58,037 INFO L138 SettingsManager]: * Use SBE=true [2022-07-13 03:57:58,038 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-13 03:57:58,038 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-13 03:57:58,038 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-13 03:57:58,039 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-13 03:57:58,039 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-13 03:57:58,039 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-13 03:57:58,039 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-13 03:57:58,039 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-13 03:57:58,040 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-13 03:57:58,041 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-13 03:57:58,042 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-13 03:57:58,042 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-13 03:57:58,042 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-13 03:57:58,042 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-13 03:57:58,043 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-13 03:57:58,043 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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(F end) ) 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 -> 3f12ca1e314a03dfb1c8beadd0c1a180c2d2339dd5f3109d5999df06d52395ab [2022-07-13 03:57:58,214 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-13 03:57:58,234 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-13 03:57:58,236 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-13 03:57:58,236 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-13 03:57:58,237 INFO L275 PluginConnector]: CDTParser initialized [2022-07-13 03:57:58,238 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/loops/eureka_05.i [2022-07-13 03:57:58,282 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f60f1fb0a/5a7a7e552437456a80ac9bb8848ee090/FLAG831bfa9ac [2022-07-13 03:57:58,629 INFO L306 CDTParser]: Found 1 translation units. [2022-07-13 03:57:58,630 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/loops/eureka_05.i [2022-07-13 03:57:58,634 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f60f1fb0a/5a7a7e552437456a80ac9bb8848ee090/FLAG831bfa9ac [2022-07-13 03:57:59,064 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f60f1fb0a/5a7a7e552437456a80ac9bb8848ee090 [2022-07-13 03:57:59,065 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-13 03:57:59,066 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-07-13 03:57:59,072 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-13 03:57:59,072 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-13 03:57:59,075 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-13 03:57:59,075 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,076 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1d25cb61 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59, skipping insertion in model container [2022-07-13 03:57:59,076 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,081 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-13 03:57:59,091 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-13 03:57:59,213 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/loops/eureka_05.i[810,823] [2022-07-13 03:57:59,223 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-13 03:57:59,229 INFO L203 MainTranslator]: Completed pre-run [2022-07-13 03:57:59,238 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/loops/eureka_05.i[810,823] [2022-07-13 03:57:59,242 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-13 03:57:59,252 INFO L208 MainTranslator]: Completed translation [2022-07-13 03:57:59,253 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59 WrapperNode [2022-07-13 03:57:59,253 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-13 03:57:59,254 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-13 03:57:59,254 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-13 03:57:59,254 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-13 03:57:59,259 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,265 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,283 INFO L137 Inliner]: procedures = 16, calls = 24, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 84 [2022-07-13 03:57:59,283 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-13 03:57:59,284 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-13 03:57:59,284 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-13 03:57:59,284 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-13 03:57:59,291 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,291 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,294 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,295 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,301 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,306 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,312 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,313 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-13 03:57:59,314 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-13 03:57:59,315 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-13 03:57:59,315 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-13 03:57:59,319 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (1/1) ... [2022-07-13 03:57:59,325 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:57:59,332 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:57:59,343 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:57:59,345 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2022-07-13 03:57:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-13 03:57:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-13 03:57:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-07-13 03:57:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-07-13 03:57:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-13 03:57:59,374 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-13 03:57:59,374 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-07-13 03:57:59,374 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-07-13 03:57:59,430 INFO L234 CfgBuilder]: Building ICFG [2022-07-13 03:57:59,432 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-13 03:57:59,582 INFO L275 CfgBuilder]: Performing block encoding [2022-07-13 03:57:59,586 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-13 03:57:59,586 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-07-13 03:57:59,588 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.07 03:57:59 BoogieIcfgContainer [2022-07-13 03:57:59,597 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-13 03:57:59,598 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-13 03:57:59,598 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-13 03:57:59,601 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-13 03:57:59,602 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:57:59,602 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 13.07 03:57:59" (1/3) ... [2022-07-13 03:57:59,603 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@7fed3e9c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.07 03:57:59, skipping insertion in model container [2022-07-13 03:57:59,603 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:57:59,603 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:57:59" (2/3) ... [2022-07-13 03:57:59,603 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@7fed3e9c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.07 03:57:59, skipping insertion in model container [2022-07-13 03:57:59,603 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:57:59,604 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.07 03:57:59" (3/3) ... [2022-07-13 03:57:59,605 INFO L354 chiAutomizerObserver]: Analyzing ICFG eureka_05.i [2022-07-13 03:57:59,689 INFO L255 stractBuchiCegarLoop]: Interprodecural is true [2022-07-13 03:57:59,689 INFO L256 stractBuchiCegarLoop]: Hoare is false [2022-07-13 03:57:59,689 INFO L257 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-13 03:57:59,689 INFO L258 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-13 03:57:59,689 INFO L259 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-13 03:57:59,689 INFO L260 stractBuchiCegarLoop]: Difference is false [2022-07-13 03:57:59,689 INFO L261 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-13 03:57:59,689 INFO L265 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-13 03:57:59,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 21 states, 20 states have (on average 1.5) internal successors, (30), 20 states have internal predecessors, (30), 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-07-13 03:57:59,711 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:57:59,712 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:57:59,712 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:57:59,722 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1] [2022-07-13 03:57:59,722 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2022-07-13 03:57:59,722 INFO L287 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-13 03:57:59,723 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 21 states, 20 states have (on average 1.5) internal successors, (30), 20 states have internal predecessors, (30), 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-07-13 03:57:59,724 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:57:59,724 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:57:59,724 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:57:59,724 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1] [2022-07-13 03:57:59,724 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2022-07-13 03:57:59,728 INFO L752 eck$LassoCheckResult]: Stem: 5#ULTIMATE.startENTRYtrue 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 13#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 6#L44-3true [2022-07-13 03:57:59,729 INFO L754 eck$LassoCheckResult]: Loop: 6#L44-3true assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 18#L44-2true main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6#L44-3true [2022-07-13 03:57:59,735 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:57:59,735 INFO L85 PathProgramCache]: Analyzing trace with hash 963, now seen corresponding path program 1 times [2022-07-13 03:57:59,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:57:59,741 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1878810211] [2022-07-13 03:57:59,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:57:59,743 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:57:59,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,837 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:57:59,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,876 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:57:59,879 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:57:59,879 INFO L85 PathProgramCache]: Analyzing trace with hash 1283, now seen corresponding path program 1 times [2022-07-13 03:57:59,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:57:59,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1514272522] [2022-07-13 03:57:59,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:57:59,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:57:59,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,897 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:57:59,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,915 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:57:59,917 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:57:59,917 INFO L85 PathProgramCache]: Analyzing trace with hash 925765, now seen corresponding path program 1 times [2022-07-13 03:57:59,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:57:59,918 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1282583476] [2022-07-13 03:57:59,918 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:57:59,918 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:57:59,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,949 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:57:59,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:57:59,979 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:00,342 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:58:00,343 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:58:00,344 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:58:00,344 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:58:00,344 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:58:00,344 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:00,344 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:58:00,344 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:58:00,345 INFO L133 ssoRankerPreferences]: Filename of dumped script: eureka_05.i_Iteration1_Lasso [2022-07-13 03:58:00,345 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:58:00,345 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:58:00,359 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,364 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,367 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,369 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,372 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,655 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,657 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,659 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:58:00,913 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:58:00,916 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:58:00,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:00,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:00,919 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:00,920 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2022-07-13 03:58:00,921 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:00,927 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:00,927 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:58:00,928 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:00,928 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:00,928 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:00,929 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:58:00,930 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:58:00,947 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:00,963 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2022-07-13 03:58:00,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:00,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:00,966 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:00,968 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2022-07-13 03:58:00,968 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:00,974 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:00,974 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:00,974 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:00,974 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:00,981 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:00,981 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:00,991 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,008 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,008 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2022-07-13 03:58:01,010 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,017 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,017 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,017 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,017 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,028 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,028 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,064 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,079 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,080 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,081 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,082 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2022-07-13 03:58:01,083 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,089 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,089 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:58:01,089 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,089 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,089 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,090 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:58:01,090 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:58:01,103 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,118 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,120 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2022-07-13 03:58:01,121 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,127 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,128 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,128 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,128 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,130 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,130 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,146 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,163 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2022-07-13 03:58:01,164 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,164 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,165 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,167 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2022-07-13 03:58:01,173 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,179 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,179 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,179 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,179 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,182 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,182 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,203 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,221 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,221 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,222 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,224 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2022-07-13 03:58:01,226 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,234 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,234 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,234 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,234 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,241 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,242 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,251 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,267 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,267 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,268 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,274 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2022-07-13 03:58:01,277 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,283 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,283 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,283 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,283 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,285 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,285 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,304 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,320 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,322 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2022-07-13 03:58:01,327 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,334 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,334 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,334 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,334 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,336 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,336 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,347 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,364 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,365 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,366 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2022-07-13 03:58:01,367 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,373 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,373 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,373 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,373 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,375 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,375 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,390 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,406 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,406 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,407 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,407 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2022-07-13 03:58:01,410 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,416 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,416 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,416 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,416 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,418 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,418 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,439 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:58:01,458 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,460 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,460 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2022-07-13 03:58:01,462 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-13 03:58:01,467 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:58:01,468 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:58:01,468 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:58:01,468 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:58:01,494 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2022-07-13 03:58:01,495 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2022-07-13 03:58:01,504 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:58:01,551 INFO L443 ModelExtractionUtils]: Simplification made 20 calls to the SMT solver. [2022-07-13 03:58:01,551 INFO L444 ModelExtractionUtils]: 1 out of 16 variables were initially zero. Simplification set additionally 12 variables to zero. [2022-07-13 03:58:01,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:58:01,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:01,554 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-13 03:58:01,555 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2022-07-13 03:58:01,556 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:58:01,588 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2022-07-13 03:58:01,588 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:58:01,589 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~i~1#1, v_rep(select #length ULTIMATE.start_main_~#array~1#1.base)_1) = 8*ULTIMATE.start_main_~i~1#1 + 1*v_rep(select #length ULTIMATE.start_main_~#array~1#1.base)_1 Supporting invariants [] [2022-07-13 03:58:01,621 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:01,680 INFO L293 tatePredicateManager]: 27 out of 27 supporting invariants were superfluous and have been removed [2022-07-13 03:58:01,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:01,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:01,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 55 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-13 03:58:01,718 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:01,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:01,737 INFO L263 TraceCheckSpWp]: Trace formula consists of 13 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:58:01,738 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:01,775 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:01,807 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2022-07-13 03:58:01,808 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 21 states, 20 states have (on average 1.5) internal successors, (30), 20 states have internal predecessors, (30), 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 has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 states have internal predecessors, (4), 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-07-13 03:58:01,861 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 21 states, 20 states have (on average 1.5) internal successors, (30), 20 states have internal predecessors, (30), 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 has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 states have internal predecessors, (4), 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) Result 48 states and 71 transitions. Complement of second has 8 states. [2022-07-13 03:58:01,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-13 03:58:01,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 states have internal predecessors, (4), 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-07-13 03:58:01,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-07-13 03:58:01,874 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 42 transitions. Stem has 2 letters. Loop has 2 letters. [2022-07-13 03:58:01,874 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:58:01,874 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 42 transitions. Stem has 4 letters. Loop has 2 letters. [2022-07-13 03:58:01,875 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:58:01,875 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 42 transitions. Stem has 2 letters. Loop has 4 letters. [2022-07-13 03:58:01,875 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:58:01,876 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 48 states and 71 transitions. [2022-07-13 03:58:01,882 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2022-07-13 03:58:01,886 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 48 states to 18 states and 24 transitions. [2022-07-13 03:58:01,886 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2022-07-13 03:58:01,886 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16 [2022-07-13 03:58:01,887 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18 states and 24 transitions. [2022-07-13 03:58:01,887 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:01,887 INFO L369 hiAutomatonCegarLoop]: Abstraction has 18 states and 24 transitions. [2022-07-13 03:58:01,897 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states and 24 transitions. [2022-07-13 03:58:01,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-07-13 03:58:01,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 17 states have internal predecessors, (24), 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-07-13 03:58:01,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 24 transitions. [2022-07-13 03:58:01,904 INFO L392 hiAutomatonCegarLoop]: Abstraction has 18 states and 24 transitions. [2022-07-13 03:58:01,904 INFO L374 stractBuchiCegarLoop]: Abstraction has 18 states and 24 transitions. [2022-07-13 03:58:01,904 INFO L287 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-13 03:58:01,904 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18 states and 24 transitions. [2022-07-13 03:58:01,906 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2022-07-13 03:58:01,906 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:01,906 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:01,906 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-13 03:58:01,906 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:01,906 INFO L752 eck$LassoCheckResult]: Stem: 221#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 222#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 223#L44-3 assume !(main_~i~1#1 >= 0); 224#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 220#L30-3 [2022-07-13 03:58:01,906 INFO L754 eck$LassoCheckResult]: Loop: 220#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 233#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 234#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 219#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 220#L30-3 [2022-07-13 03:58:01,907 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:01,907 INFO L85 PathProgramCache]: Analyzing trace with hash 925707, now seen corresponding path program 1 times [2022-07-13 03:58:01,908 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:01,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1467584194] [2022-07-13 03:58:01,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:01,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:01,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:01,950 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:01,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:01,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1467584194] [2022-07-13 03:58:01,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1467584194] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:58:01,952 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:58:01,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-07-13 03:58:01,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [867360575] [2022-07-13 03:58:01,952 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:58:01,954 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:01,954 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:01,954 INFO L85 PathProgramCache]: Analyzing trace with hash 1668713, now seen corresponding path program 1 times [2022-07-13 03:58:01,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:01,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [790354688] [2022-07-13 03:58:01,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:01,955 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:01,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:01,963 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:01,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:01,969 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,043 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:02,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-13 03:58:02,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-13 03:58:02,046 INFO L87 Difference]: Start difference. First operand 18 states and 24 transitions. cyclomatic complexity: 9 Second operand has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 states have internal predecessors, (4), 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-07-13 03:58:02,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:02,058 INFO L93 Difference]: Finished difference Result 19 states and 23 transitions. [2022-07-13 03:58:02,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-13 03:58:02,059 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19 states and 23 transitions. [2022-07-13 03:58:02,060 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,060 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19 states to 18 states and 22 transitions. [2022-07-13 03:58:02,060 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2022-07-13 03:58:02,060 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2022-07-13 03:58:02,060 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18 states and 22 transitions. [2022-07-13 03:58:02,061 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:02,061 INFO L369 hiAutomatonCegarLoop]: Abstraction has 18 states and 22 transitions. [2022-07-13 03:58:02,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states and 22 transitions. [2022-07-13 03:58:02,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 17. [2022-07-13 03:58:02,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 16 states have internal predecessors, (21), 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-07-13 03:58:02,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 21 transitions. [2022-07-13 03:58:02,062 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17 states and 21 transitions. [2022-07-13 03:58:02,062 INFO L374 stractBuchiCegarLoop]: Abstraction has 17 states and 21 transitions. [2022-07-13 03:58:02,062 INFO L287 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-13 03:58:02,062 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17 states and 21 transitions. [2022-07-13 03:58:02,063 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,063 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:02,063 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:02,063 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:58:02,063 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:02,063 INFO L752 eck$LassoCheckResult]: Stem: 262#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 263#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 264#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 265#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 266#L44-3 assume !(main_~i~1#1 >= 0); 267#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 261#L30-3 [2022-07-13 03:58:02,064 INFO L754 eck$LassoCheckResult]: Loop: 261#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 275#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 276#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 260#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 261#L30-3 [2022-07-13 03:58:02,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,064 INFO L85 PathProgramCache]: Analyzing trace with hash 889660429, now seen corresponding path program 1 times [2022-07-13 03:58:02,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,064 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [408855856] [2022-07-13 03:58:02,064 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:02,088 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,088 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:02,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [408855856] [2022-07-13 03:58:02,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [408855856] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:02,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [562912669] [2022-07-13 03:58:02,091 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,092 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:02,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:02,094 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:02,135 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-07-13 03:58:02,176 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2022-07-13 03:58:02,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:02,187 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 3 conjunts are in the unsatisfiable core [2022-07-13 03:58:02,188 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:02,198 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,198 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:02,227 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,227 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [562912669] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:02,228 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:02,228 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 6 [2022-07-13 03:58:02,228 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1231199940] [2022-07-13 03:58:02,228 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:02,228 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:02,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,228 INFO L85 PathProgramCache]: Analyzing trace with hash 1668713, now seen corresponding path program 2 times [2022-07-13 03:58:02,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1321849964] [2022-07-13 03:58:02,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,235 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,240 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,243 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,316 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:02,317 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-07-13 03:58:02,318 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2022-07-13 03:58:02,318 INFO L87 Difference]: Start difference. First operand 17 states and 21 transitions. cyclomatic complexity: 7 Second operand has 6 states, 6 states have (on average 1.6666666666666667) internal successors, (10), 6 states have internal predecessors, (10), 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-07-13 03:58:02,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:02,347 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-07-13 03:58:02,348 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-13 03:58:02,349 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 27 states and 31 transitions. [2022-07-13 03:58:02,350 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,350 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 27 states to 27 states and 31 transitions. [2022-07-13 03:58:02,351 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19 [2022-07-13 03:58:02,351 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19 [2022-07-13 03:58:02,352 INFO L73 IsDeterministic]: Start isDeterministic. Operand 27 states and 31 transitions. [2022-07-13 03:58:02,352 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:02,352 INFO L369 hiAutomatonCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-07-13 03:58:02,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states and 31 transitions. [2022-07-13 03:58:02,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 23. [2022-07-13 03:58:02,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.173913043478261) internal successors, (27), 22 states have internal predecessors, (27), 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-07-13 03:58:02,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 27 transitions. [2022-07-13 03:58:02,355 INFO L392 hiAutomatonCegarLoop]: Abstraction has 23 states and 27 transitions. [2022-07-13 03:58:02,355 INFO L374 stractBuchiCegarLoop]: Abstraction has 23 states and 27 transitions. [2022-07-13 03:58:02,355 INFO L287 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-13 03:58:02,355 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 23 states and 27 transitions. [2022-07-13 03:58:02,357 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,357 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:02,357 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:02,358 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 1, 1, 1, 1] [2022-07-13 03:58:02,358 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:02,358 INFO L752 eck$LassoCheckResult]: Stem: 345#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 346#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 347#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 348#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 349#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 350#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 365#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 364#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 363#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 362#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 361#L44-3 assume !(main_~i~1#1 >= 0); 351#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 344#L30-3 [2022-07-13 03:58:02,358 INFO L754 eck$LassoCheckResult]: Loop: 344#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 359#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 360#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 343#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 344#L30-3 [2022-07-13 03:58:02,358 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,358 INFO L85 PathProgramCache]: Analyzing trace with hash 833936659, now seen corresponding path program 2 times [2022-07-13 03:58:02,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [420600535] [2022-07-13 03:58:02,359 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,359 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:02,434 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:02,434 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [420600535] [2022-07-13 03:58:02,435 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [420600535] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:02,435 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1729514579] [2022-07-13 03:58:02,435 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:58:02,435 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:02,435 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:02,452 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:02,453 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-07-13 03:58:02,493 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:58:02,493 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:02,494 INFO L263 TraceCheckSpWp]: Trace formula consists of 102 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:58:02,495 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:02,517 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,517 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:02,539 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:02,540 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1729514579] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:02,540 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:02,540 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 7 [2022-07-13 03:58:02,540 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2057093942] [2022-07-13 03:58:02,540 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:02,541 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:02,542 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,542 INFO L85 PathProgramCache]: Analyzing trace with hash 1668713, now seen corresponding path program 3 times [2022-07-13 03:58:02,542 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,542 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917082855] [2022-07-13 03:58:02,542 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,558 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,570 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,630 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:02,631 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-13 03:58:02,632 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2022-07-13 03:58:02,632 INFO L87 Difference]: Start difference. First operand 23 states and 27 transitions. cyclomatic complexity: 7 Second operand has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 7 states have internal predecessors, (12), 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-07-13 03:58:02,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:02,673 INFO L93 Difference]: Finished difference Result 41 states and 45 transitions. [2022-07-13 03:58:02,674 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-13 03:58:02,674 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 45 transitions. [2022-07-13 03:58:02,675 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,676 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 41 states and 45 transitions. [2022-07-13 03:58:02,676 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 31 [2022-07-13 03:58:02,676 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2022-07-13 03:58:02,677 INFO L73 IsDeterministic]: Start isDeterministic. Operand 41 states and 45 transitions. [2022-07-13 03:58:02,677 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:02,677 INFO L369 hiAutomatonCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-07-13 03:58:02,677 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states and 45 transitions. [2022-07-13 03:58:02,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 25. [2022-07-13 03:58:02,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.16) internal successors, (29), 24 states have internal predecessors, (29), 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-07-13 03:58:02,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-07-13 03:58:02,680 INFO L392 hiAutomatonCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-07-13 03:58:02,680 INFO L374 stractBuchiCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-07-13 03:58:02,680 INFO L287 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2022-07-13 03:58:02,680 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 25 states and 29 transitions. [2022-07-13 03:58:02,683 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,683 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:02,683 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:02,684 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 1, 1, 1, 1] [2022-07-13 03:58:02,684 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:02,684 INFO L752 eck$LassoCheckResult]: Stem: 485#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 486#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 487#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 488#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 489#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 490#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 507#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 506#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 505#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 504#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 503#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 502#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 501#L44-3 assume !(main_~i~1#1 >= 0); 491#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 484#L30-3 [2022-07-13 03:58:02,684 INFO L754 eck$LassoCheckResult]: Loop: 484#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 499#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 500#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 483#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 484#L30-3 [2022-07-13 03:58:02,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,685 INFO L85 PathProgramCache]: Analyzing trace with hash -1745699051, now seen corresponding path program 3 times [2022-07-13 03:58:02,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146187390] [2022-07-13 03:58:02,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,721 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,732 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,732 INFO L85 PathProgramCache]: Analyzing trace with hash 1668713, now seen corresponding path program 4 times [2022-07-13 03:58:02,733 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [827923887] [2022-07-13 03:58:02,733 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,733 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,737 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,741 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,741 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,741 INFO L85 PathProgramCache]: Analyzing trace with hash -743535747, now seen corresponding path program 1 times [2022-07-13 03:58:02,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [654535587] [2022-07-13 03:58:02,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,742 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:02,776 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:02,776 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:02,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [654535587] [2022-07-13 03:58:02,776 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [654535587] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:58:02,776 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:58:02,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-13 03:58:02,776 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962733097] [2022-07-13 03:58:02,776 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:58:02,828 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:02,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-07-13 03:58:02,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-07-13 03:58:02,828 INFO L87 Difference]: Start difference. First operand 25 states and 29 transitions. cyclomatic complexity: 7 Second operand has 5 states, 5 states have (on average 2.0) internal successors, (10), 4 states have internal predecessors, (10), 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-07-13 03:58:02,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:02,854 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-07-13 03:58:02,855 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-13 03:58:02,855 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 34 states and 41 transitions. [2022-07-13 03:58:02,855 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:58:02,856 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 34 states to 34 states and 41 transitions. [2022-07-13 03:58:02,856 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2022-07-13 03:58:02,856 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2022-07-13 03:58:02,856 INFO L73 IsDeterministic]: Start isDeterministic. Operand 34 states and 41 transitions. [2022-07-13 03:58:02,856 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:02,856 INFO L369 hiAutomatonCegarLoop]: Abstraction has 34 states and 41 transitions. [2022-07-13 03:58:02,856 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states and 41 transitions. [2022-07-13 03:58:02,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 27. [2022-07-13 03:58:02,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 26 states have internal predecessors, (31), 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-07-13 03:58:02,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-07-13 03:58:02,857 INFO L392 hiAutomatonCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-07-13 03:58:02,857 INFO L374 stractBuchiCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-07-13 03:58:02,857 INFO L287 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2022-07-13 03:58:02,857 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27 states and 31 transitions. [2022-07-13 03:58:02,858 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:02,858 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:02,858 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:02,858 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:02,858 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:02,858 INFO L752 eck$LassoCheckResult]: Stem: 556#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 557#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 558#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 559#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 560#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 561#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 580#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 579#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 578#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 577#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 576#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 575#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 574#L44-3 assume !(main_~i~1#1 >= 0); 562#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 563#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 572#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 568#L33 [2022-07-13 03:58:02,858 INFO L754 eck$LassoCheckResult]: Loop: 568#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 569#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 571#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 568#L33 [2022-07-13 03:58:02,858 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,858 INFO L85 PathProgramCache]: Analyzing trace with hash 1715425501, now seen corresponding path program 1 times [2022-07-13 03:58:02,859 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,859 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1170017263] [2022-07-13 03:58:02,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,882 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,901 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,903 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,903 INFO L85 PathProgramCache]: Analyzing trace with hash 64667, now seen corresponding path program 1 times [2022-07-13 03:58:02,903 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,903 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [360852629] [2022-07-13 03:58:02,903 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,903 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,908 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:02,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:02,911 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:02,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:02,911 INFO L85 PathProgramCache]: Analyzing trace with hash -1574719937, now seen corresponding path program 1 times [2022-07-13 03:58:02,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:02,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1095935806] [2022-07-13 03:58:02,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:02,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:02,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:03,201 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 25 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-13 03:58:03,201 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:03,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1095935806] [2022-07-13 03:58:03,202 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1095935806] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:03,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [993512145] [2022-07-13 03:58:03,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:03,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:03,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:03,204 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:03,205 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-07-13 03:58:03,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:03,251 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 26 conjunts are in the unsatisfiable core [2022-07-13 03:58:03,253 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:03,302 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:03,302 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:03,334 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:03,372 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:03,390 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:03,412 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:03,448 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:03,534 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:03,534 INFO L173 IndexEqualityManager]: detected equality via solver [2022-07-13 03:58:03,535 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:03,535 INFO L173 IndexEqualityManager]: detected equality via solver [2022-07-13 03:58:03,536 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 13 [2022-07-13 03:58:03,553 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-07-13 03:58:03,553 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:03,634 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_122 (Array Int Int))) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_122) |c_~#array~0.base|))) (<= (select .cse0 |c_~#array~0.offset|) (select .cse0 (+ |c_~#array~0.offset| 4))))) is different from false [2022-07-13 03:58:03,698 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 9 not checked. [2022-07-13 03:58:03,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [993512145] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:03,699 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:03,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7, 7] total 23 [2022-07-13 03:58:03,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [142616212] [2022-07-13 03:58:03,699 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:03,751 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:03,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-07-13 03:58:03,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=424, Unknown=1, NotChecked=42, Total=552 [2022-07-13 03:58:03,752 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. cyclomatic complexity: 7 Second operand has 24 states, 24 states have (on average 1.7083333333333333) internal successors, (41), 23 states have internal predecessors, (41), 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-07-13 03:58:04,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:04,358 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-07-13 03:58:04,358 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-07-13 03:58:04,359 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 35 states and 41 transitions. [2022-07-13 03:58:04,359 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2022-07-13 03:58:04,359 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 35 states to 35 states and 41 transitions. [2022-07-13 03:58:04,359 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2022-07-13 03:58:04,359 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2022-07-13 03:58:04,359 INFO L73 IsDeterministic]: Start isDeterministic. Operand 35 states and 41 transitions. [2022-07-13 03:58:04,360 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:04,360 INFO L369 hiAutomatonCegarLoop]: Abstraction has 35 states and 41 transitions. [2022-07-13 03:58:04,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states and 41 transitions. [2022-07-13 03:58:04,361 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 28. [2022-07-13 03:58:04,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 27 states have internal predecessors, (32), 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-07-13 03:58:04,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2022-07-13 03:58:04,361 INFO L392 hiAutomatonCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-07-13 03:58:04,361 INFO L374 stractBuchiCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-07-13 03:58:04,361 INFO L287 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2022-07-13 03:58:04,361 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 32 transitions. [2022-07-13 03:58:04,361 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:04,361 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:04,361 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:04,362 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:04,362 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:04,362 INFO L752 eck$LassoCheckResult]: Stem: 781#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 782#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 783#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 784#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 785#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 786#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 805#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 804#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 803#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 802#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 801#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 800#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 799#L44-3 assume !(main_~i~1#1 >= 0); 787#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 788#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 797#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 793#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 794#L32-2 [2022-07-13 03:58:04,362 INFO L754 eck$LassoCheckResult]: Loop: 794#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 796#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 806#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 794#L32-2 [2022-07-13 03:58:04,362 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:04,362 INFO L85 PathProgramCache]: Analyzing trace with hash 1638583016, now seen corresponding path program 1 times [2022-07-13 03:58:04,362 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:04,362 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1691085968] [2022-07-13 03:58:04,362 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:04,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:04,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:04,390 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:04,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:04,399 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:04,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:04,400 INFO L85 PathProgramCache]: Analyzing trace with hash 68297, now seen corresponding path program 2 times [2022-07-13 03:58:04,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:04,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1647957571] [2022-07-13 03:58:04,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:04,400 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:04,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:04,405 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:04,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:04,409 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:04,409 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:04,409 INFO L85 PathProgramCache]: Analyzing trace with hash -1571618174, now seen corresponding path program 1 times [2022-07-13 03:58:04,410 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:04,410 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [128709346] [2022-07-13 03:58:04,410 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:04,410 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:04,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:04,670 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-07-13 03:58:04,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:04,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [128709346] [2022-07-13 03:58:04,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [128709346] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:04,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2036784046] [2022-07-13 03:58:04,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:04,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:04,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:04,672 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:04,673 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-07-13 03:58:04,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:04,738 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 34 conjunts are in the unsatisfiable core [2022-07-13 03:58:04,740 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:04,776 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:04,776 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:04,798 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:04,835 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:04,882 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:04,898 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:04,916 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:05,047 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 13 [2022-07-13 03:58:05,064 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 23 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-07-13 03:58:05,064 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:05,163 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_163 (Array Int Int))) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_163) |c_~#array~0.base|))) (<= (select .cse0 |c_~#array~0.offset|) (select .cse0 (+ |c_~#array~0.offset| 8))))) is different from false [2022-07-13 03:58:05,191 WARN L833 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_main_~#array~1#1.base_55| Int) (v_ArrVal_163 (Array Int Int))) (or (not (= (select |c_#valid| |v_ULTIMATE.start_main_~#array~1#1.base_55|) 0)) (let ((.cse0 (select (store |c_#memory_int| |v_ULTIMATE.start_main_~#array~1#1.base_55| v_ArrVal_163) |c_~#array~0.base|))) (<= (select .cse0 |c_~#array~0.offset|) (select .cse0 (+ |c_~#array~0.offset| 8)))))) is different from false [2022-07-13 03:58:05,192 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 9 not checked. [2022-07-13 03:58:05,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2036784046] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:05,192 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:05,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 7] total 25 [2022-07-13 03:58:05,192 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [995070855] [2022-07-13 03:58:05,192 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:05,233 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:05,234 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-07-13 03:58:05,234 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=526, Unknown=2, NotChecked=94, Total=702 [2022-07-13 03:58:05,234 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. cyclomatic complexity: 7 Second operand has 27 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 26 states have internal predecessors, (46), 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-07-13 03:58:05,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:05,900 INFO L93 Difference]: Finished difference Result 51 states and 61 transitions. [2022-07-13 03:58:05,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-07-13 03:58:05,900 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 51 states and 61 transitions. [2022-07-13 03:58:05,901 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2022-07-13 03:58:05,901 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 51 states to 51 states and 61 transitions. [2022-07-13 03:58:05,901 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2022-07-13 03:58:05,902 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2022-07-13 03:58:05,902 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 61 transitions. [2022-07-13 03:58:05,902 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:05,902 INFO L369 hiAutomatonCegarLoop]: Abstraction has 51 states and 61 transitions. [2022-07-13 03:58:05,902 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 61 transitions. [2022-07-13 03:58:05,903 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 31. [2022-07-13 03:58:05,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 30 states have internal predecessors, (36), 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-07-13 03:58:05,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 36 transitions. [2022-07-13 03:58:05,904 INFO L392 hiAutomatonCegarLoop]: Abstraction has 31 states and 36 transitions. [2022-07-13 03:58:05,904 INFO L374 stractBuchiCegarLoop]: Abstraction has 31 states and 36 transitions. [2022-07-13 03:58:05,904 INFO L287 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2022-07-13 03:58:05,904 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 36 transitions. [2022-07-13 03:58:05,904 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:05,904 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:05,904 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:05,905 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:05,905 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:05,905 INFO L752 eck$LassoCheckResult]: Stem: 1031#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1032#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1033#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1034#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1035#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1036#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1056#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1055#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1054#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1053#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1052#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1051#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1050#L44-3 assume !(main_~i~1#1 >= 0); 1037#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1038#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1047#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1048#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1059#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1058#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 1049#L32-4 [2022-07-13 03:58:05,905 INFO L754 eck$LassoCheckResult]: Loop: 1049#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1029#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 1030#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1046#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 1049#L32-4 [2022-07-13 03:58:05,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:05,905 INFO L85 PathProgramCache]: Analyzing trace with hash -1574718017, now seen corresponding path program 1 times [2022-07-13 03:58:05,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:05,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1104633724] [2022-07-13 03:58:05,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:05,906 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:05,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:05,932 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:05,932 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:05,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1104633724] [2022-07-13 03:58:05,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1104633724] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:05,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1827933853] [2022-07-13 03:58:05,932 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:05,932 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:05,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:05,934 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:05,935 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-07-13 03:58:05,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:05,977 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 5 conjunts are in the unsatisfiable core [2022-07-13 03:58:05,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:06,013 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:06,013 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:06,054 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:06,054 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1827933853] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:06,054 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:06,055 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 11 [2022-07-13 03:58:06,055 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1507501165] [2022-07-13 03:58:06,055 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:06,055 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:06,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,056 INFO L85 PathProgramCache]: Analyzing trace with hash 2248553, now seen corresponding path program 5 times [2022-07-13 03:58:06,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,057 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [648893541] [2022-07-13 03:58:06,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,057 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,062 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:06,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,064 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:06,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:06,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-07-13 03:58:06,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=107, Unknown=0, NotChecked=0, Total=156 [2022-07-13 03:58:06,123 INFO L87 Difference]: Start difference. First operand 31 states and 36 transitions. cyclomatic complexity: 8 Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 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-07-13 03:58:06,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:06,225 INFO L93 Difference]: Finished difference Result 51 states and 61 transitions. [2022-07-13 03:58:06,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-07-13 03:58:06,227 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 51 states and 61 transitions. [2022-07-13 03:58:06,228 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 16 [2022-07-13 03:58:06,228 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 51 states to 51 states and 61 transitions. [2022-07-13 03:58:06,228 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2022-07-13 03:58:06,228 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2022-07-13 03:58:06,228 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 61 transitions. [2022-07-13 03:58:06,228 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:06,228 INFO L369 hiAutomatonCegarLoop]: Abstraction has 51 states and 61 transitions. [2022-07-13 03:58:06,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 61 transitions. [2022-07-13 03:58:06,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 46. [2022-07-13 03:58:06,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 46 states have (on average 1.173913043478261) internal successors, (54), 45 states have internal predecessors, (54), 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-07-13 03:58:06,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 54 transitions. [2022-07-13 03:58:06,230 INFO L392 hiAutomatonCegarLoop]: Abstraction has 46 states and 54 transitions. [2022-07-13 03:58:06,230 INFO L374 stractBuchiCegarLoop]: Abstraction has 46 states and 54 transitions. [2022-07-13 03:58:06,230 INFO L287 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2022-07-13 03:58:06,230 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 54 transitions. [2022-07-13 03:58:06,230 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:58:06,230 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:06,230 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:06,231 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 3, 3, 1, 1, 1, 1, 1] [2022-07-13 03:58:06,231 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:06,231 INFO L752 eck$LassoCheckResult]: Stem: 1253#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1254#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1255#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1256#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1257#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1258#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1285#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1283#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1280#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1278#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1277#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1274#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1273#L44-3 assume !(main_~i~1#1 >= 0); 1259#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1260#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1295#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1294#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1293#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1292#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1291#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1290#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1289#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1288#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1287#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1286#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1282#L33 [2022-07-13 03:58:06,231 INFO L754 eck$LassoCheckResult]: Loop: 1282#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1284#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1281#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1282#L33 [2022-07-13 03:58:06,231 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,231 INFO L85 PathProgramCache]: Analyzing trace with hash 649240641, now seen corresponding path program 1 times [2022-07-13 03:58:06,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1882477040] [2022-07-13 03:58:06,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,241 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,241 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:06,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,250 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:06,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,250 INFO L85 PathProgramCache]: Analyzing trace with hash 64667, now seen corresponding path program 3 times [2022-07-13 03:58:06,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1715072968] [2022-07-13 03:58:06,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,250 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,253 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:06,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,254 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:06,255 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,255 INFO L85 PathProgramCache]: Analyzing trace with hash 1290237019, now seen corresponding path program 2 times [2022-07-13 03:58:06,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,255 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [624595310] [2022-07-13 03:58:06,255 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,255 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:06,323 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:06,323 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:06,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [624595310] [2022-07-13 03:58:06,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [624595310] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:58:06,323 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:58:06,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-07-13 03:58:06,323 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2003938041] [2022-07-13 03:58:06,323 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:58:06,371 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:06,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-07-13 03:58:06,373 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-07-13 03:58:06,373 INFO L87 Difference]: Start difference. First operand 46 states and 54 transitions. cyclomatic complexity: 12 Second operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 8 states have internal predecessors, (20), 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-07-13 03:58:06,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:06,437 INFO L93 Difference]: Finished difference Result 46 states and 53 transitions. [2022-07-13 03:58:06,437 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-07-13 03:58:06,438 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46 states and 53 transitions. [2022-07-13 03:58:06,438 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:06,438 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46 states to 46 states and 53 transitions. [2022-07-13 03:58:06,438 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2022-07-13 03:58:06,438 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2022-07-13 03:58:06,438 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46 states and 53 transitions. [2022-07-13 03:58:06,439 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:06,439 INFO L369 hiAutomatonCegarLoop]: Abstraction has 46 states and 53 transitions. [2022-07-13 03:58:06,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states and 53 transitions. [2022-07-13 03:58:06,440 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-07-13 03:58:06,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 45 states have internal predecessors, (53), 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-07-13 03:58:06,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 53 transitions. [2022-07-13 03:58:06,440 INFO L392 hiAutomatonCegarLoop]: Abstraction has 46 states and 53 transitions. [2022-07-13 03:58:06,440 INFO L374 stractBuchiCegarLoop]: Abstraction has 46 states and 53 transitions. [2022-07-13 03:58:06,440 INFO L287 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2022-07-13 03:58:06,440 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 53 transitions. [2022-07-13 03:58:06,441 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:06,441 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:06,441 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:06,441 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 5, 5, 2, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:06,441 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:06,441 INFO L752 eck$LassoCheckResult]: Stem: 1371#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1372#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1373#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1374#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1375#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1376#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1402#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1401#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1399#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1397#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1395#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1391#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1390#L44-3 assume !(main_~i~1#1 >= 0); 1377#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1378#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1389#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1414#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1386#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1387#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1383#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1384#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1413#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1412#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1411#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1410#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1409#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1408#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1407#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 1388#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1369#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 1370#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1406#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1405#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1404#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1403#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1398#L33 [2022-07-13 03:58:06,441 INFO L754 eck$LassoCheckResult]: Loop: 1398#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1400#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1393#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1398#L33 [2022-07-13 03:58:06,442 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,442 INFO L85 PathProgramCache]: Analyzing trace with hash -264183975, now seen corresponding path program 1 times [2022-07-13 03:58:06,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,442 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [25670984] [2022-07-13 03:58:06,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,469 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:06,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,485 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:06,501 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,501 INFO L85 PathProgramCache]: Analyzing trace with hash 64667, now seen corresponding path program 4 times [2022-07-13 03:58:06,501 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,501 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1382642557] [2022-07-13 03:58:06,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,504 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:06,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:06,507 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:06,507 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:06,507 INFO L85 PathProgramCache]: Analyzing trace with hash -1924678077, now seen corresponding path program 1 times [2022-07-13 03:58:06,507 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:06,507 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60819033] [2022-07-13 03:58:06,507 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,507 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:06,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:06,904 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 12 proven. 34 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-07-13 03:58:06,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:06,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [60819033] [2022-07-13 03:58:06,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [60819033] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:06,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [515162314] [2022-07-13 03:58:06,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:06,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:06,904 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:06,909 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:06,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-07-13 03:58:07,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:07,007 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 32 conjunts are in the unsatisfiable core [2022-07-13 03:58:07,010 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:07,050 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:07,050 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:07,083 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-07-13 03:58:07,100 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-07-13 03:58:07,125 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-07-13 03:58:07,142 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-07-13 03:58:07,177 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-07-13 03:58:07,376 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:07,377 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:07,377 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:07,380 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 36 [2022-07-13 03:58:07,498 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 13 [2022-07-13 03:58:07,518 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 12 proven. 34 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-07-13 03:58:07,518 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:07,715 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_264 (Array Int Int))) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_264) |c_~#array~0.base|))) (<= (select .cse0 (+ |c_~#array~0.offset| 4)) (select .cse0 (+ |c_~#array~0.offset| 12))))) is different from false [2022-07-13 03:58:07,760 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 12 proven. 25 refuted. 0 times theorem prover too weak. 38 trivial. 9 not checked. [2022-07-13 03:58:07,760 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [515162314] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:07,760 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:07,760 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 30 [2022-07-13 03:58:07,760 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1355819534] [2022-07-13 03:58:07,760 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:07,807 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:07,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-07-13 03:58:07,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=778, Unknown=1, NotChecked=56, Total=930 [2022-07-13 03:58:07,808 INFO L87 Difference]: Start difference. First operand 46 states and 53 transitions. cyclomatic complexity: 10 Second operand has 31 states, 31 states have (on average 2.096774193548387) internal successors, (65), 30 states have internal predecessors, (65), 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-07-13 03:58:08,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:08,500 INFO L93 Difference]: Finished difference Result 68 states and 78 transitions. [2022-07-13 03:58:08,500 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-07-13 03:58:08,501 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 68 states and 78 transitions. [2022-07-13 03:58:08,501 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2022-07-13 03:58:08,502 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 68 states to 68 states and 78 transitions. [2022-07-13 03:58:08,502 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2022-07-13 03:58:08,502 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2022-07-13 03:58:08,502 INFO L73 IsDeterministic]: Start isDeterministic. Operand 68 states and 78 transitions. [2022-07-13 03:58:08,502 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:08,503 INFO L369 hiAutomatonCegarLoop]: Abstraction has 68 states and 78 transitions. [2022-07-13 03:58:08,503 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states and 78 transitions. [2022-07-13 03:58:08,521 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 59. [2022-07-13 03:58:08,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 58 states have internal predecessors, (67), 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-07-13 03:58:08,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-07-13 03:58:08,524 INFO L392 hiAutomatonCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-07-13 03:58:08,524 INFO L374 stractBuchiCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-07-13 03:58:08,524 INFO L287 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2022-07-13 03:58:08,525 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 59 states and 67 transitions. [2022-07-13 03:58:08,525 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:08,525 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:08,525 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:08,528 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 5, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:08,528 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:08,528 INFO L752 eck$LassoCheckResult]: Stem: 1766#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1767#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1768#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1769#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1770#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1771#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1799#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1798#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1797#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1796#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1794#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 1790#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1789#L44-3 assume !(main_~i~1#1 >= 0); 1772#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1773#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1817#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1816#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1815#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1814#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1813#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1812#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1811#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1809#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1810#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1822#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1804#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1805#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1800#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 1801#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1764#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 1765#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1821#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1818#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 1819#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1783#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1784#L33 [2022-07-13 03:58:08,528 INFO L754 eck$LassoCheckResult]: Loop: 1784#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1779#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 1792#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1784#L33 [2022-07-13 03:58:08,528 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:08,528 INFO L85 PathProgramCache]: Analyzing trace with hash 322622039, now seen corresponding path program 2 times [2022-07-13 03:58:08,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:08,529 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [119727639] [2022-07-13 03:58:08,529 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:08,529 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:08,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:08,841 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 25 proven. 16 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-07-13 03:58:08,841 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:08,841 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [119727639] [2022-07-13 03:58:08,841 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [119727639] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:08,841 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [297009621] [2022-07-13 03:58:08,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:58:08,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:08,842 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:08,843 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:08,876 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-07-13 03:58:08,928 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:58:08,928 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:08,930 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 30 conjunts are in the unsatisfiable core [2022-07-13 03:58:08,931 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:08,959 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:08,960 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:08,987 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:09,007 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:09,026 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:09,044 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:09,056 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:09,217 INFO L173 IndexEqualityManager]: detected equality via solver [2022-07-13 03:58:09,218 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 13 [2022-07-13 03:58:09,237 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 25 proven. 16 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-07-13 03:58:09,238 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:09,352 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_302 (Array Int Int))) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_302) |c_~#array~0.base|))) (<= (select .cse0 |c_~#array~0.offset|) (select .cse0 (+ |c_~#array~0.offset| 12))))) is different from false [2022-07-13 03:58:09,396 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 25 proven. 7 refuted. 0 times theorem prover too weak. 26 trivial. 9 not checked. [2022-07-13 03:58:09,397 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [297009621] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:09,397 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:09,397 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 27 [2022-07-13 03:58:09,397 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1892228756] [2022-07-13 03:58:09,397 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:09,397 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:09,405 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:09,405 INFO L85 PathProgramCache]: Analyzing trace with hash 64667, now seen corresponding path program 5 times [2022-07-13 03:58:09,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:09,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1117094803] [2022-07-13 03:58:09,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:09,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:09,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:09,408 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:09,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:09,411 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:09,466 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:09,466 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-07-13 03:58:09,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=599, Unknown=1, NotChecked=50, Total=756 [2022-07-13 03:58:09,467 INFO L87 Difference]: Start difference. First operand 59 states and 67 transitions. cyclomatic complexity: 11 Second operand has 28 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 27 states have internal predecessors, (58), 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-07-13 03:58:09,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:09,872 INFO L93 Difference]: Finished difference Result 58 states and 64 transitions. [2022-07-13 03:58:09,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-07-13 03:58:09,873 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 58 states and 64 transitions. [2022-07-13 03:58:09,873 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2022-07-13 03:58:09,874 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 58 states to 58 states and 64 transitions. [2022-07-13 03:58:09,874 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 48 [2022-07-13 03:58:09,874 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 48 [2022-07-13 03:58:09,874 INFO L73 IsDeterministic]: Start isDeterministic. Operand 58 states and 64 transitions. [2022-07-13 03:58:09,874 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:09,874 INFO L369 hiAutomatonCegarLoop]: Abstraction has 58 states and 64 transitions. [2022-07-13 03:58:09,874 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states and 64 transitions. [2022-07-13 03:58:09,875 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2022-07-13 03:58:09,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 55 states have internal predecessors, (62), 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-07-13 03:58:09,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 62 transitions. [2022-07-13 03:58:09,876 INFO L392 hiAutomatonCegarLoop]: Abstraction has 56 states and 62 transitions. [2022-07-13 03:58:09,876 INFO L374 stractBuchiCegarLoop]: Abstraction has 56 states and 62 transitions. [2022-07-13 03:58:09,876 INFO L287 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2022-07-13 03:58:09,876 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 62 transitions. [2022-07-13 03:58:09,876 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:09,876 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:09,876 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:09,876 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 5, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:09,876 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:09,877 INFO L752 eck$LassoCheckResult]: Stem: 2135#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 2136#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 2137#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2138#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2139#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2140#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2166#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2165#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2163#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2161#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2159#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2155#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2154#L44-3 assume !(main_~i~1#1 >= 0); 2141#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 2142#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2188#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2187#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2150#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2151#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2186#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2185#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2184#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2183#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2182#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2181#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2180#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 2178#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2177#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 2153#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2133#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 2134#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2152#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2147#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2148#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2170#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2162#L33 [2022-07-13 03:58:09,877 INFO L754 eck$LassoCheckResult]: Loop: 2162#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 2164#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2157#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2162#L33 [2022-07-13 03:58:09,877 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:09,877 INFO L85 PathProgramCache]: Analyzing trace with hash 128843035, now seen corresponding path program 3 times [2022-07-13 03:58:09,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:09,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [743267109] [2022-07-13 03:58:09,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:09,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:09,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:10,220 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 23 proven. 24 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-07-13 03:58:10,221 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:10,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [743267109] [2022-07-13 03:58:10,221 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [743267109] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:10,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1723532359] [2022-07-13 03:58:10,221 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:58:10,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:10,221 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:10,223 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:10,251 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-07-13 03:58:10,322 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-07-13 03:58:10,323 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:10,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 33 conjunts are in the unsatisfiable core [2022-07-13 03:58:10,326 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:10,374 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:10,374 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:10,405 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:10,424 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:10,441 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:10,459 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:10,481 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:10,641 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-07-13 03:58:10,642 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 31 treesize of output 33 [2022-07-13 03:58:10,767 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 19 proven. 19 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-07-13 03:58:10,768 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:10,989 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_337 (Array Int Int)) (|ULTIMATE.start_SelectionSort_~i~0#1| Int)) (or (not (< |ULTIMATE.start_SelectionSort_~i~0#1| c_~n~0)) (< (+ |ULTIMATE.start_SelectionSort_~i~0#1| 1) c_~n~0) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_337) |c_~#array~0.base|))) (<= (select .cse0 |c_~#array~0.offset|) (select .cse0 (+ (* |ULTIMATE.start_SelectionSort_~i~0#1| 4) |c_~#array~0.offset|)))))) is different from false [2022-07-13 03:58:11,071 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 19 proven. 10 refuted. 0 times theorem prover too weak. 29 trivial. 9 not checked. [2022-07-13 03:58:11,071 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1723532359] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:11,071 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:11,071 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 9] total 29 [2022-07-13 03:58:11,072 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786821382] [2022-07-13 03:58:11,072 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:11,072 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:11,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:11,072 INFO L85 PathProgramCache]: Analyzing trace with hash 64667, now seen corresponding path program 6 times [2022-07-13 03:58:11,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:11,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1843336015] [2022-07-13 03:58:11,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:11,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:11,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:11,077 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:11,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:11,079 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:11,126 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:11,127 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-07-13 03:58:11,127 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=723, Unknown=1, NotChecked=54, Total=870 [2022-07-13 03:58:11,128 INFO L87 Difference]: Start difference. First operand 56 states and 62 transitions. cyclomatic complexity: 9 Second operand has 30 states, 30 states have (on average 1.9666666666666666) internal successors, (59), 29 states have internal predecessors, (59), 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-07-13 03:58:12,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:12,133 INFO L93 Difference]: Finished difference Result 51 states and 57 transitions. [2022-07-13 03:58:12,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-07-13 03:58:12,133 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 51 states and 57 transitions. [2022-07-13 03:58:12,134 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:58:12,134 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 51 states to 51 states and 57 transitions. [2022-07-13 03:58:12,134 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2022-07-13 03:58:12,134 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2022-07-13 03:58:12,134 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 57 transitions. [2022-07-13 03:58:12,134 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:12,135 INFO L369 hiAutomatonCegarLoop]: Abstraction has 51 states and 57 transitions. [2022-07-13 03:58:12,135 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 57 transitions. [2022-07-13 03:58:12,136 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 47. [2022-07-13 03:58:12,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 47 states have (on average 1.0851063829787233) internal successors, (51), 46 states have internal predecessors, (51), 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-07-13 03:58:12,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2022-07-13 03:58:12,136 INFO L392 hiAutomatonCegarLoop]: Abstraction has 47 states and 51 transitions. [2022-07-13 03:58:12,136 INFO L374 stractBuchiCegarLoop]: Abstraction has 47 states and 51 transitions. [2022-07-13 03:58:12,136 INFO L287 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2022-07-13 03:58:12,136 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 51 transitions. [2022-07-13 03:58:12,137 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:12,137 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:12,137 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:12,137 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 5, 5, 5, 2, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:12,137 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:12,138 INFO L752 eck$LassoCheckResult]: Stem: 2517#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 2518#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 2519#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2520#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2521#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2522#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2546#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2545#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2544#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2543#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2541#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2537#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2536#L44-3 assume !(main_~i~1#1 >= 0); 2523#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 2524#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2559#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2558#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2557#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2556#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2555#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2554#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2553#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2552#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2551#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2550#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2549#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2548#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2547#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 2534#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2515#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 2516#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2535#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2561#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2532#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2533#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2529#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2530#L32-2 [2022-07-13 03:58:12,138 INFO L754 eck$LassoCheckResult]: Loop: 2530#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2539#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2560#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 2530#L32-2 [2022-07-13 03:58:12,138 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:12,138 INFO L85 PathProgramCache]: Analyzing trace with hash 400231404, now seen corresponding path program 2 times [2022-07-13 03:58:12,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:12,138 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1249102665] [2022-07-13 03:58:12,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:12,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:12,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:12,154 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:12,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:12,166 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:12,167 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:12,167 INFO L85 PathProgramCache]: Analyzing trace with hash 68297, now seen corresponding path program 7 times [2022-07-13 03:58:12,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:12,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2055166171] [2022-07-13 03:58:12,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:12,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:12,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:12,169 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:12,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:12,172 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:12,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:12,172 INFO L85 PathProgramCache]: Analyzing trace with hash 464581374, now seen corresponding path program 4 times [2022-07-13 03:58:12,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:12,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1498079523] [2022-07-13 03:58:12,172 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:12,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:12,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:12,498 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 0 proven. 52 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-07-13 03:58:12,499 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:12,499 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1498079523] [2022-07-13 03:58:12,499 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1498079523] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:12,499 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1941769563] [2022-07-13 03:58:12,499 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:58:12,499 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:12,499 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:12,501 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:12,502 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-07-13 03:58:12,594 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:58:12,595 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:12,596 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 46 conjunts are in the unsatisfiable core [2022-07-13 03:58:12,599 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:12,623 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-07-13 03:58:12,624 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-07-13 03:58:12,662 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:12,678 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:12,695 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:12,710 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:12,722 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 23 [2022-07-13 03:58:13,074 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:13,074 INFO L173 IndexEqualityManager]: detected equality via solver [2022-07-13 03:58:13,075 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:13,075 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-07-13 03:58:13,076 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 52 treesize of output 42 [2022-07-13 03:58:13,347 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-07-13 03:58:13,347 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 44 treesize of output 36 [2022-07-13 03:58:13,395 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 0 proven. 74 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-07-13 03:58:13,396 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:38,999 WARN L833 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_389 Int) (v_ArrVal_387 (Array Int Int)) (|v_ULTIMATE.start_SelectionSort_~rh~0#1_44| Int)) (let ((.cse1 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#array~1#1.base| v_ArrVal_387) |c_~#array~0.base|))) (let ((.cse2 (select (store .cse1 |c_~#array~0.offset| v_ArrVal_389) (+ |c_~#array~0.offset| (* |v_ULTIMATE.start_SelectionSort_~rh~0#1_44| 4)))) (.cse0 (select .cse1 (+ 16 |c_~#array~0.offset|)))) (or (< .cse0 (select .cse1 |c_~#array~0.offset|)) (< (select .cse1 (+ |c_~#array~0.offset| 8)) .cse2) (<= .cse2 .cse0))))) is different from false [2022-07-13 03:58:39,119 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 7 proven. 58 refuted. 0 times theorem prover too weak. 16 trivial. 9 not checked. [2022-07-13 03:58:39,119 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1941769563] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:39,119 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:39,119 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 18, 18] total 48 [2022-07-13 03:58:39,119 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [691313368] [2022-07-13 03:58:39,119 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:39,159 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:39,159 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 50 interpolants. [2022-07-13 03:58:39,160 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=184, Invalid=2169, Unknown=3, NotChecked=94, Total=2450 [2022-07-13 03:58:39,160 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. cyclomatic complexity: 7 Second operand has 50 states, 49 states have (on average 1.816326530612245) internal successors, (89), 49 states have internal predecessors, (89), 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-07-13 03:58:41,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:41,153 INFO L93 Difference]: Finished difference Result 58 states and 65 transitions. [2022-07-13 03:58:41,154 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-07-13 03:58:41,154 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 58 states and 65 transitions. [2022-07-13 03:58:41,154 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2022-07-13 03:58:41,155 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 58 states to 58 states and 65 transitions. [2022-07-13 03:58:41,155 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 48 [2022-07-13 03:58:41,156 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 48 [2022-07-13 03:58:41,156 INFO L73 IsDeterministic]: Start isDeterministic. Operand 58 states and 65 transitions. [2022-07-13 03:58:41,156 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:41,156 INFO L369 hiAutomatonCegarLoop]: Abstraction has 58 states and 65 transitions. [2022-07-13 03:58:41,156 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states and 65 transitions. [2022-07-13 03:58:41,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 50. [2022-07-13 03:58:41,157 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 1.1) internal successors, (55), 49 states have internal predecessors, (55), 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-07-13 03:58:41,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 55 transitions. [2022-07-13 03:58:41,158 INFO L392 hiAutomatonCegarLoop]: Abstraction has 50 states and 55 transitions. [2022-07-13 03:58:41,158 INFO L374 stractBuchiCegarLoop]: Abstraction has 50 states and 55 transitions. [2022-07-13 03:58:41,158 INFO L287 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2022-07-13 03:58:41,158 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 55 transitions. [2022-07-13 03:58:41,158 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:41,158 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:41,158 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:41,158 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 6, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:41,158 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:41,159 INFO L752 eck$LassoCheckResult]: Stem: 2961#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 2962#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 2963#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2964#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2965#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2966#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2990#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2989#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2988#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2987#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2985#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 2982#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2981#L44-3 assume !(main_~i~1#1 >= 0); 2967#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 2968#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3003#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3002#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3001#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3000#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2999#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2998#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2997#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2996#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2995#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2994#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2993#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 2992#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2991#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 2979#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2959#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 2960#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2980#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3006#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3005#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 2977#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2978#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3008#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3007#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 2986#L32-4 [2022-07-13 03:58:41,159 INFO L754 eck$LassoCheckResult]: Loop: 2986#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2984#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 2983#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2976#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 2986#L32-4 [2022-07-13 03:58:41,159 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:41,159 INFO L85 PathProgramCache]: Analyzing trace with hash -1924676157, now seen corresponding path program 3 times [2022-07-13 03:58:41,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:41,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1030751704] [2022-07-13 03:58:41,159 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:41,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:41,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:41,215 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 37 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2022-07-13 03:58:41,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:41,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1030751704] [2022-07-13 03:58:41,215 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1030751704] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:41,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1071020238] [2022-07-13 03:58:41,216 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:58:41,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:41,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:41,225 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:41,227 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-07-13 03:58:41,295 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-07-13 03:58:41,295 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:41,296 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:58:41,301 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:41,390 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 37 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2022-07-13 03:58:41,390 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:41,437 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 37 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2022-07-13 03:58:41,438 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1071020238] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:41,438 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:41,438 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 12 [2022-07-13 03:58:41,438 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [368925634] [2022-07-13 03:58:41,438 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:41,439 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:41,439 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:41,439 INFO L85 PathProgramCache]: Analyzing trace with hash 2248553, now seen corresponding path program 6 times [2022-07-13 03:58:41,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:41,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1582031111] [2022-07-13 03:58:41,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:41,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:41,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,443 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:41,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,446 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:41,509 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:41,509 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-07-13 03:58:41,509 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2022-07-13 03:58:41,509 INFO L87 Difference]: Start difference. First operand 50 states and 55 transitions. cyclomatic complexity: 8 Second operand has 14 states, 13 states have (on average 3.4615384615384617) internal successors, (45), 13 states have internal predecessors, (45), 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-07-13 03:58:41,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:41,621 INFO L93 Difference]: Finished difference Result 56 states and 62 transitions. [2022-07-13 03:58:41,621 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-07-13 03:58:41,622 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 56 states and 62 transitions. [2022-07-13 03:58:41,622 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2022-07-13 03:58:41,622 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 56 states to 56 states and 62 transitions. [2022-07-13 03:58:41,623 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 46 [2022-07-13 03:58:41,623 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 46 [2022-07-13 03:58:41,623 INFO L73 IsDeterministic]: Start isDeterministic. Operand 56 states and 62 transitions. [2022-07-13 03:58:41,623 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:41,623 INFO L369 hiAutomatonCegarLoop]: Abstraction has 56 states and 62 transitions. [2022-07-13 03:58:41,623 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states and 62 transitions. [2022-07-13 03:58:41,624 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 50. [2022-07-13 03:58:41,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 1.08) internal successors, (54), 49 states have internal predecessors, (54), 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-07-13 03:58:41,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2022-07-13 03:58:41,625 INFO L392 hiAutomatonCegarLoop]: Abstraction has 50 states and 54 transitions. [2022-07-13 03:58:41,625 INFO L374 stractBuchiCegarLoop]: Abstraction has 50 states and 54 transitions. [2022-07-13 03:58:41,625 INFO L287 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2022-07-13 03:58:41,625 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 54 transitions. [2022-07-13 03:58:41,625 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2022-07-13 03:58:41,625 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:41,626 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:41,626 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 6, 5, 5, 2, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:41,626 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:58:41,626 INFO L752 eck$LassoCheckResult]: Stem: 3324#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 3325#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 3326#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3327#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3328#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3329#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3356#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3354#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3352#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3350#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3349#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3346#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3345#L44-3 assume !(main_~i~1#1 >= 0); 3330#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 3331#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3367#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3366#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3365#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3364#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3363#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3362#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3361#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3360#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3359#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3358#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3357#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3355#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3353#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 3351#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3322#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 3323#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3344#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3371#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3339#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3340#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3369#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3370#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3341#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3336#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3337#L32-2 [2022-07-13 03:58:41,626 INFO L754 eck$LassoCheckResult]: Loop: 3337#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3348#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3368#L33 assume SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 3337#L32-2 [2022-07-13 03:58:41,627 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:41,627 INFO L85 PathProgramCache]: Analyzing trace with hash 464581376, now seen corresponding path program 4 times [2022-07-13 03:58:41,627 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:41,627 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [195924160] [2022-07-13 03:58:41,627 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:41,627 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:41,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,646 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:41,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,679 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:41,680 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:41,680 INFO L85 PathProgramCache]: Analyzing trace with hash 68297, now seen corresponding path program 8 times [2022-07-13 03:58:41,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:41,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [130157849] [2022-07-13 03:58:41,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:41,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:41,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,683 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:41,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:41,685 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:41,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:41,685 INFO L85 PathProgramCache]: Analyzing trace with hash 1959183210, now seen corresponding path program 5 times [2022-07-13 03:58:41,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:41,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1461537563] [2022-07-13 03:58:41,686 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:41,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:41,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:41,748 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 19 proven. 45 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2022-07-13 03:58:41,748 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:41,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1461537563] [2022-07-13 03:58:41,749 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1461537563] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:41,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1909628249] [2022-07-13 03:58:41,749 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:58:41,749 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:41,749 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:41,750 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:41,751 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-07-13 03:58:41,832 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-07-13 03:58:41,832 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:41,833 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 12 conjunts are in the unsatisfiable core [2022-07-13 03:58:41,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:41,916 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 20 proven. 66 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:41,916 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:41,959 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 20 proven. 66 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-07-13 03:58:41,960 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1909628249] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:41,960 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:41,960 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 13, 13] total 15 [2022-07-13 03:58:41,960 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [26015800] [2022-07-13 03:58:41,960 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:42,009 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:42,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-07-13 03:58:42,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-07-13 03:58:42,010 INFO L87 Difference]: Start difference. First operand 50 states and 54 transitions. cyclomatic complexity: 7 Second operand has 15 states, 15 states have (on average 3.1333333333333333) internal successors, (47), 15 states have internal predecessors, (47), 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-07-13 03:58:42,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:42,267 INFO L93 Difference]: Finished difference Result 79 states and 89 transitions. [2022-07-13 03:58:42,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-07-13 03:58:42,267 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 79 states and 89 transitions. [2022-07-13 03:58:42,268 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 16 [2022-07-13 03:58:42,268 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 79 states to 79 states and 89 transitions. [2022-07-13 03:58:42,269 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 69 [2022-07-13 03:58:42,269 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 69 [2022-07-13 03:58:42,269 INFO L73 IsDeterministic]: Start isDeterministic. Operand 79 states and 89 transitions. [2022-07-13 03:58:42,269 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:42,269 INFO L369 hiAutomatonCegarLoop]: Abstraction has 79 states and 89 transitions. [2022-07-13 03:58:42,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states and 89 transitions. [2022-07-13 03:58:42,270 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 66. [2022-07-13 03:58:42,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 66 states have (on average 1.1515151515151516) internal successors, (76), 65 states have internal predecessors, (76), 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-07-13 03:58:42,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 76 transitions. [2022-07-13 03:58:42,271 INFO L392 hiAutomatonCegarLoop]: Abstraction has 66 states and 76 transitions. [2022-07-13 03:58:42,271 INFO L374 stractBuchiCegarLoop]: Abstraction has 66 states and 76 transitions. [2022-07-13 03:58:42,271 INFO L287 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2022-07-13 03:58:42,271 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 66 states and 76 transitions. [2022-07-13 03:58:42,272 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2022-07-13 03:58:42,272 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:42,272 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:42,272 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 5, 5, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:42,272 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:42,273 INFO L752 eck$LassoCheckResult]: Stem: 3751#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 3752#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 3753#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3754#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3755#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3756#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3778#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3777#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3776#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3775#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3774#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 3773#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3772#L44-3 assume !(main_~i~1#1 >= 0); 3757#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 3758#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3794#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3793#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3792#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3791#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3790#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3789#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3788#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3787#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3786#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3785#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3784#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3783#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3782#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 3781#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3749#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 3750#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3771#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3801#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3797#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3798#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3799#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3800#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3768#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3763#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 3764#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 3811#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 3769#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3770#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 3780#L30-3 assume !(SelectionSort_~lh~0#1 < ~n~0); 3765#L26 assume { :end_inline_SelectionSort } true;main_~i~1#1 := 0; 3762#L49-3 [2022-07-13 03:58:42,273 INFO L754 eck$LassoCheckResult]: Loop: 3762#L49-3 assume !!(main_~i~1#1 < 5);call main_#t~mem9#1 := read~int(main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_#t~mem9#1 == main_~i~1#1 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; 3759#L15 assume !(0 == __VERIFIER_assert_~cond#1); 3760#L15-2 assume { :end_inline___VERIFIER_assert } true;havoc main_#t~mem9#1; 3761#L49-2 main_#t~post8#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 3762#L49-3 [2022-07-13 03:58:42,273 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:42,273 INFO L85 PathProgramCache]: Analyzing trace with hash 1714859028, now seen corresponding path program 1 times [2022-07-13 03:58:42,273 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:42,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1062674163] [2022-07-13 03:58:42,274 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:42,274 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:42,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:42,326 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 59 trivial. 0 not checked. [2022-07-13 03:58:42,327 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:42,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1062674163] [2022-07-13 03:58:42,327 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1062674163] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:42,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1128326276] [2022-07-13 03:58:42,327 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:42,327 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:42,328 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:42,338 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:42,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-07-13 03:58:42,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:42,428 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 5 conjunts are in the unsatisfiable core [2022-07-13 03:58:42,429 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:42,525 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 59 trivial. 0 not checked. [2022-07-13 03:58:42,526 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:42,582 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 59 trivial. 0 not checked. [2022-07-13 03:58:42,582 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1128326276] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:42,582 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:42,582 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 11 [2022-07-13 03:58:42,582 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1876241361] [2022-07-13 03:58:42,582 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:42,582 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:42,583 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:42,583 INFO L85 PathProgramCache]: Analyzing trace with hash 2685258, now seen corresponding path program 1 times [2022-07-13 03:58:42,583 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:42,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [442141676] [2022-07-13 03:58:42,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:42,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:42,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:42,587 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:42,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:42,589 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:42,637 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:42,637 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-07-13 03:58:42,637 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=75, Unknown=0, NotChecked=0, Total=132 [2022-07-13 03:58:42,637 INFO L87 Difference]: Start difference. First operand 66 states and 76 transitions. cyclomatic complexity: 13 Second operand has 12 states, 12 states have (on average 4.916666666666667) internal successors, (59), 11 states have internal predecessors, (59), 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-07-13 03:58:42,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:42,683 INFO L93 Difference]: Finished difference Result 73 states and 81 transitions. [2022-07-13 03:58:42,683 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-13 03:58:42,683 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 73 states and 81 transitions. [2022-07-13 03:58:42,684 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2022-07-13 03:58:42,684 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 73 states to 73 states and 81 transitions. [2022-07-13 03:58:42,684 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 63 [2022-07-13 03:58:42,684 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 63 [2022-07-13 03:58:42,684 INFO L73 IsDeterministic]: Start isDeterministic. Operand 73 states and 81 transitions. [2022-07-13 03:58:42,684 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:42,685 INFO L369 hiAutomatonCegarLoop]: Abstraction has 73 states and 81 transitions. [2022-07-13 03:58:42,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states and 81 transitions. [2022-07-13 03:58:42,686 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 73. [2022-07-13 03:58:42,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 73 states have (on average 1.1095890410958904) internal successors, (81), 72 states have internal predecessors, (81), 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-07-13 03:58:42,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 81 transitions. [2022-07-13 03:58:42,686 INFO L392 hiAutomatonCegarLoop]: Abstraction has 73 states and 81 transitions. [2022-07-13 03:58:42,686 INFO L374 stractBuchiCegarLoop]: Abstraction has 73 states and 81 transitions. [2022-07-13 03:58:42,686 INFO L287 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2022-07-13 03:58:42,686 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 73 states and 81 transitions. [2022-07-13 03:58:42,686 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2022-07-13 03:58:42,686 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:42,686 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:42,687 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 5, 5, 5, 4, 4, 4, 1, 1, 1, 1] [2022-07-13 03:58:42,687 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:42,687 INFO L752 eck$LassoCheckResult]: Stem: 4173#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 4174#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 4175#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4176#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4177#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4178#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4203#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4201#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4199#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4198#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4196#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4192#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4191#L44-3 assume !(main_~i~1#1 >= 0); 4179#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 4180#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4189#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4185#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4186#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4188#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4243#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4241#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4239#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4237#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4235#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4233#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4231#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4229#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4227#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4190#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4171#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4172#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4242#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4240#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4238#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4236#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4234#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4232#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4230#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4228#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4226#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4225#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4224#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4223#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4221#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4216#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4214#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4212#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4210#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4205#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4204#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4202#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4200#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4194#L32-3 [2022-07-13 03:58:42,687 INFO L754 eck$LassoCheckResult]: Loop: 4194#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4197#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4195#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4193#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4194#L32-3 [2022-07-13 03:58:42,687 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:42,687 INFO L85 PathProgramCache]: Analyzing trace with hash 1550869743, now seen corresponding path program 5 times [2022-07-13 03:58:42,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:42,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [709279899] [2022-07-13 03:58:42,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:42,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:42,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:42,738 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 24 proven. 58 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2022-07-13 03:58:42,738 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:42,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [709279899] [2022-07-13 03:58:42,738 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [709279899] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:42,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [523965245] [2022-07-13 03:58:42,738 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:58:42,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:42,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:42,740 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:42,740 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-07-13 03:58:42,819 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2022-07-13 03:58:42,820 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:58:42,820 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 12 conjunts are in the unsatisfiable core [2022-07-13 03:58:42,821 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:42,879 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 82 proven. 21 refuted. 0 times theorem prover too weak. 41 trivial. 0 not checked. [2022-07-13 03:58:42,879 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:58:42,937 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 89 proven. 4 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2022-07-13 03:58:42,937 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [523965245] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:58:42,937 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-13 03:58:42,937 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 10, 8] total 16 [2022-07-13 03:58:42,937 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [579825982] [2022-07-13 03:58:42,937 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-13 03:58:42,937 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:58:42,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:42,938 INFO L85 PathProgramCache]: Analyzing trace with hash 1859993, now seen corresponding path program 7 times [2022-07-13 03:58:42,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:42,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1108825504] [2022-07-13 03:58:42,938 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:42,938 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:42,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:42,940 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:42,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:42,942 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:43,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:43,012 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-07-13 03:58:43,012 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=178, Unknown=0, NotChecked=0, Total=240 [2022-07-13 03:58:43,012 INFO L87 Difference]: Start difference. First operand 73 states and 81 transitions. cyclomatic complexity: 11 Second operand has 16 states, 16 states have (on average 4.125) internal successors, (66), 16 states have internal predecessors, (66), 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-07-13 03:58:43,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:43,270 INFO L93 Difference]: Finished difference Result 70 states and 75 transitions. [2022-07-13 03:58:43,271 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-07-13 03:58:43,271 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 70 states and 75 transitions. [2022-07-13 03:58:43,272 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2022-07-13 03:58:43,272 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 70 states to 70 states and 75 transitions. [2022-07-13 03:58:43,272 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2022-07-13 03:58:43,273 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2022-07-13 03:58:43,273 INFO L73 IsDeterministic]: Start isDeterministic. Operand 70 states and 75 transitions. [2022-07-13 03:58:43,273 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:43,273 INFO L369 hiAutomatonCegarLoop]: Abstraction has 70 states and 75 transitions. [2022-07-13 03:58:43,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states and 75 transitions. [2022-07-13 03:58:43,274 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-07-13 03:58:43,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 70 states have (on average 1.0714285714285714) internal successors, (75), 69 states have internal predecessors, (75), 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-07-13 03:58:43,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 75 transitions. [2022-07-13 03:58:43,274 INFO L392 hiAutomatonCegarLoop]: Abstraction has 70 states and 75 transitions. [2022-07-13 03:58:43,274 INFO L374 stractBuchiCegarLoop]: Abstraction has 70 states and 75 transitions. [2022-07-13 03:58:43,274 INFO L287 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2022-07-13 03:58:43,275 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 70 states and 75 transitions. [2022-07-13 03:58:43,275 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2022-07-13 03:58:43,275 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:43,275 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:43,276 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 10, 5, 5, 5, 4, 4, 4, 1, 1, 1, 1] [2022-07-13 03:58:43,276 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:43,276 INFO L752 eck$LassoCheckResult]: Stem: 4681#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 4682#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 4683#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4684#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4685#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4686#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4711#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4709#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4707#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4706#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4704#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 4700#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4699#L44-3 assume !(main_~i~1#1 >= 0); 4687#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 4688#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4697#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4693#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4694#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4696#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4747#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4745#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4743#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4741#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4739#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4737#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4735#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4733#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4729#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4698#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4679#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4680#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4748#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4746#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4744#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4742#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4740#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4738#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4736#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4734#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4732#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4731#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4730#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4728#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4727#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4726#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4725#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4724#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4723#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4722#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4721#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4720#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4719#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4718#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4717#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4716#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4715#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 4714#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 4713#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4712#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4710#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4708#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4702#L32-3 [2022-07-13 03:58:43,276 INFO L754 eck$LassoCheckResult]: Loop: 4702#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 4705#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4703#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 4701#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4702#L32-3 [2022-07-13 03:58:43,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,276 INFO L85 PathProgramCache]: Analyzing trace with hash 673243683, now seen corresponding path program 6 times [2022-07-13 03:58:43,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,277 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [402632742] [2022-07-13 03:58:43,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,304 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:43,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,329 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:43,331 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,331 INFO L85 PathProgramCache]: Analyzing trace with hash 1859993, now seen corresponding path program 8 times [2022-07-13 03:58:43,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1627820454] [2022-07-13 03:58:43,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,332 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,335 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:43,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,339 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:43,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,339 INFO L85 PathProgramCache]: Analyzing trace with hash -1965333829, now seen corresponding path program 7 times [2022-07-13 03:58:43,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1555032777] [2022-07-13 03:58:43,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:43,412 INFO L134 CoverageAnalysis]: Checked inductivity of 255 backedges. 79 proven. 111 refuted. 0 times theorem prover too weak. 65 trivial. 0 not checked. [2022-07-13 03:58:43,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:58:43,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1555032777] [2022-07-13 03:58:43,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1555032777] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-13 03:58:43,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1857037653] [2022-07-13 03:58:43,413 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:58:43,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:58:43,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:58:43,414 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-13 03:58:43,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-07-13 03:58:43,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:58:43,513 INFO L263 TraceCheckSpWp]: Trace formula consists of 368 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-13 03:58:43,528 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:58:43,686 INFO L134 CoverageAnalysis]: Checked inductivity of 255 backedges. 190 proven. 0 refuted. 0 times theorem prover too weak. 65 trivial. 0 not checked. [2022-07-13 03:58:43,686 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-13 03:58:43,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1857037653] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:58:43,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-07-13 03:58:43,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [7] total 13 [2022-07-13 03:58:43,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2009027475] [2022-07-13 03:58:43,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:58:43,743 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:58:43,743 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-07-13 03:58:43,744 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=135, Unknown=0, NotChecked=0, Total=210 [2022-07-13 03:58:43,744 INFO L87 Difference]: Start difference. First operand 70 states and 75 transitions. cyclomatic complexity: 8 Second operand has 9 states, 8 states have (on average 4.875) internal successors, (39), 8 states have internal predecessors, (39), 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-07-13 03:58:43,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:58:43,780 INFO L93 Difference]: Finished difference Result 70 states and 74 transitions. [2022-07-13 03:58:43,780 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-13 03:58:43,780 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 70 states and 74 transitions. [2022-07-13 03:58:43,781 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2022-07-13 03:58:43,781 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 70 states to 70 states and 74 transitions. [2022-07-13 03:58:43,781 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2022-07-13 03:58:43,781 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2022-07-13 03:58:43,781 INFO L73 IsDeterministic]: Start isDeterministic. Operand 70 states and 74 transitions. [2022-07-13 03:58:43,782 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:58:43,782 INFO L369 hiAutomatonCegarLoop]: Abstraction has 70 states and 74 transitions. [2022-07-13 03:58:43,782 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states and 74 transitions. [2022-07-13 03:58:43,783 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-07-13 03:58:43,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 70 states have (on average 1.0571428571428572) internal successors, (74), 69 states have internal predecessors, (74), 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-07-13 03:58:43,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 74 transitions. [2022-07-13 03:58:43,783 INFO L392 hiAutomatonCegarLoop]: Abstraction has 70 states and 74 transitions. [2022-07-13 03:58:43,783 INFO L374 stractBuchiCegarLoop]: Abstraction has 70 states and 74 transitions. [2022-07-13 03:58:43,783 INFO L287 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2022-07-13 03:58:43,783 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 70 states and 74 transitions. [2022-07-13 03:58:43,784 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2022-07-13 03:58:43,784 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:58:43,784 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:58:43,785 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 10, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1] [2022-07-13 03:58:43,785 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2022-07-13 03:58:43,785 INFO L752 eck$LassoCheckResult]: Stem: 5033#ULTIMATE.startENTRY 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(12, 2);~#array~0.base, ~#array~0.offset := 3, 0;call #Ultimate.allocInit(20, 3);call write~init~int(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 5034#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem9#1, main_#t~post8#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 5035#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 5036#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5037#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 5038#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5063#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 5061#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5059#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 5057#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5055#L44-3 assume !!(main_~i~1#1 >= 0);call write~int(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4); 5052#L44-2 main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5051#L44-3 assume !(main_~i~1#1 >= 0); 5039#L44-4 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~post2#1, SelectionSort_#t~mem5#1, SelectionSort_#t~mem6#1, SelectionSort_#t~post1#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 5040#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5049#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5045#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5046#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5048#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5099#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5097#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5095#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5093#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5091#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5089#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5087#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5085#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5081#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 5050#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5031#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 5032#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5100#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5098#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5096#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5094#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5092#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5090#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5088#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5086#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5084#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5083#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 5082#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5080#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 5079#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5078#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5077#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5076#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5075#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5074#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5073#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5072#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 5071#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5070#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 5069#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5068#L32-3 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem3#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem4#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5067#L33 assume !(SelectionSort_#t~mem3#1 < SelectionSort_#t~mem4#1);havoc SelectionSort_#t~mem3#1;havoc SelectionSort_#t~mem4#1; 5066#L32-2 SelectionSort_#t~post2#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post2#1;havoc SelectionSort_#t~post2#1; 5065#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 5064#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5062#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 5060#L30-3 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5058#L32-3 assume !(SelectionSort_~i~0#1 < ~n~0); 5056#L32-4 call SelectionSort_#t~mem5#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem5#1;havoc SelectionSort_#t~mem5#1;call SelectionSort_#t~mem6#1 := read~int(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int(SelectionSort_#t~mem6#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem6#1;call write~int(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5054#L30-2 SelectionSort_#t~post1#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post1#1;havoc SelectionSort_#t~post1#1; 5053#L30-3 assume !(SelectionSort_~lh~0#1 < ~n~0); 5047#L26 assume { :end_inline_SelectionSort } true;main_~i~1#1 := 0; 5044#L49-3 [2022-07-13 03:58:43,785 INFO L754 eck$LassoCheckResult]: Loop: 5044#L49-3 assume !!(main_~i~1#1 < 5);call main_#t~mem9#1 := read~int(main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_#t~mem9#1 == main_~i~1#1 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; 5041#L15 assume !(0 == __VERIFIER_assert_~cond#1); 5042#L15-2 assume { :end_inline___VERIFIER_assert } true;havoc main_#t~mem9#1; 5043#L49-2 main_#t~post8#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 5044#L49-3 [2022-07-13 03:58:43,785 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,785 INFO L85 PathProgramCache]: Analyzing trace with hash -795806568, now seen corresponding path program 2 times [2022-07-13 03:58:43,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,786 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2118846968] [2022-07-13 03:58:43,786 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,786 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,810 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:43,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,830 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:43,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,831 INFO L85 PathProgramCache]: Analyzing trace with hash 2685258, now seen corresponding path program 2 times [2022-07-13 03:58:43,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [337902653] [2022-07-13 03:58:43,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,834 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:43,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,836 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:58:43,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:58:43,836 INFO L85 PathProgramCache]: Analyzing trace with hash 2138032737, now seen corresponding path program 1 times [2022-07-13 03:58:43,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:58:43,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1969394653] [2022-07-13 03:58:43,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:58:43,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:58:43,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,874 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:58:43,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:58:43,905 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:59:07,732 WARN L233 SmtUtils]: Spent 23.75s on a formula simplification. DAG size of input: 471 DAG size of output: 345 (called from [L 279] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2022-07-13 03:59:08,493 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:59:08,493 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:59:08,493 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:59:08,493 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:59:08,493 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:59:08,493 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:59:08,493 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:59:08,493 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:59:08,493 INFO L133 ssoRankerPreferences]: Filename of dumped script: eureka_05.i_Iteration19_Lasso [2022-07-13 03:59:08,494 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:59:08,494 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:59:08,495 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:08,498 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:08,500 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:08,501 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:08,502 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:08,504 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-13 03:59:09,706 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer has thrown an exception: java.lang.IllegalArgumentException at de.uni_freiburg.informatik.ultimate.util.datastructures.ScopedHashMap.put(ScopedHashMap.java:331) at java.base/java.util.AbstractMap.putAll(AbstractMap.java:281) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.PureSubstitution.(PureSubstitution.java:81) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.Substitution.(Substitution.java:48) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.Substitution.apply(Substitution.java:59) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.mapelimination.MapEliminator.replaceMapReads(MapEliminator.java:518) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.mapelimination.MapEliminator.getRewrittenTransFormula(MapEliminator.java:342) at de.uni_freiburg.informatik.ultimate.lassoranker.preprocessors.MapEliminationLassoPreprocessor.process(MapEliminationLassoPreprocessor.java:111) at de.uni_freiburg.informatik.ultimate.lassoranker.variables.LassoBuilder.applyPreprocessor(LassoBuilder.java:154) at de.uni_freiburg.informatik.ultimate.lassoranker.variables.LassoBuilder.preprocess(LassoBuilder.java:262) at de.uni_freiburg.informatik.ultimate.lassoranker.LassoAnalysis.preprocess(LassoAnalysis.java:280) at de.uni_freiburg.informatik.ultimate.lassoranker.LassoAnalysis.(LassoAnalysis.java:229) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.LassoCheck.synthesize(LassoCheck.java:601) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.LassoCheck$LassoCheckResult.checkLassoTermination(LassoCheck.java:914) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.LassoCheck$LassoCheckResult.(LassoCheck.java:823) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.LassoCheck.(LassoCheck.java:247) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.cegar.AbstractBuchiCegarLoop.runCegarLoop(AbstractBuchiCegarLoop.java:310) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver.doTerminationAnalysis(BuchiAutomizerObserver.java:146) at de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver.finish(BuchiAutomizerObserver.java:363) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-07-13 03:59:09,709 INFO L158 Benchmark]: Toolchain (without parser) took 70643.30ms. Allocated memory was 90.2MB in the beginning and 195.0MB in the end (delta: 104.9MB). Free memory was 58.5MB in the beginning and 97.4MB in the end (delta: -38.8MB). Peak memory consumption was 122.6MB. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 90.2MB. Free memory was 49.1MB in the beginning and 49.0MB in the end (delta: 37.1kB). There was no memory consumed. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: CACSL2BoogieTranslator took 180.93ms. Allocated memory was 90.2MB in the beginning and 111.1MB in the end (delta: 21.0MB). Free memory was 58.3MB in the beginning and 85.9MB in the end (delta: -27.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: Boogie Procedure Inliner took 29.71ms. Allocated memory is still 111.1MB. Free memory was 85.6MB in the beginning and 84.0MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: Boogie Preprocessor took 29.83ms. Allocated memory is still 111.1MB. Free memory was 84.0MB in the beginning and 82.6MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: RCFGBuilder took 282.83ms. Allocated memory is still 111.1MB. Free memory was 82.6MB in the beginning and 72.2MB in the end (delta: 10.4MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2022-07-13 03:59:09,710 INFO L158 Benchmark]: BuchiAutomizer took 70111.32ms. Allocated memory was 111.1MB in the beginning and 195.0MB in the end (delta: 83.9MB). Free memory was 71.9MB in the beginning and 97.4MB in the end (delta: -25.5MB). Peak memory consumption was 117.3MB. Max. memory is 16.1GB. [2022-07-13 03:59:09,711 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 90.2MB. Free memory was 49.1MB in the beginning and 49.0MB in the end (delta: 37.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 180.93ms. Allocated memory was 90.2MB in the beginning and 111.1MB in the end (delta: 21.0MB). Free memory was 58.3MB in the beginning and 85.9MB in the end (delta: -27.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 29.71ms. Allocated memory is still 111.1MB. Free memory was 85.6MB in the beginning and 84.0MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 29.83ms. Allocated memory is still 111.1MB. Free memory was 84.0MB in the beginning and 82.6MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 282.83ms. Allocated memory is still 111.1MB. Free memory was 82.6MB in the beginning and 72.2MB in the end (delta: 10.4MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. * BuchiAutomizer took 70111.32ms. Allocated memory was 111.1MB in the beginning and 195.0MB in the end (delta: 83.9MB). Free memory was 71.9MB in the beginning and 97.4MB in the end (delta: -25.5MB). Peak memory consumption was 117.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: - ExceptionOrErrorResult: IllegalArgumentException: null de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: IllegalArgumentException: null: de.uni_freiburg.informatik.ultimate.util.datastructures.ScopedHashMap.put(ScopedHashMap.java:331) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-07-13 03:59:09,735 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Ended with exit code 0 [2022-07-13 03:59:09,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:10,143 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:10,343 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:10,546 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:10,737 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:10,936 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Ended with exit code 0 [2022-07-13 03:59:11,136 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:11,337 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:11,536 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:11,737 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:11,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:12,137 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-07-13 03:59:12,337 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-07-13 03:59:12,563 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis No suitable file found in config dir /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config using search string *Termination*32bit*_Bitvector*.epf No suitable settings file found using Termination*32bit*_Bitvector ERROR: UNSUPPORTED PROPERTY Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: IllegalArgumentException: null