./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/termination-numeric/Binomial.c --full-output --architecture 64bit -------------------------------------------------------------------------------- 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/termination-numeric/Binomial.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-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 64bit --witnessprinter.graph.data.programhash c204b56aba09d3ce87e17edffdff1d33aa0b4dc87a1e1140339548dffa982588 --- Real Ultimate output --- This is Ultimate 0.2.2-?-6c24879 [2022-07-13 03:08:26,501 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-13 03:08:26,503 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-13 03:08:26,540 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-13 03:08:26,541 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-13 03:08:26,544 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-13 03:08:26,546 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-13 03:08:26,548 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-13 03:08:26,550 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-13 03:08:26,555 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-13 03:08:26,556 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-13 03:08:26,558 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-13 03:08:26,558 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-13 03:08:26,560 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-13 03:08:26,560 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-13 03:08:26,561 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-13 03:08:26,561 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-13 03:08:26,562 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-13 03:08:26,562 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-13 03:08:26,564 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-13 03:08:26,565 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-13 03:08:26,565 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-13 03:08:26,566 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-13 03:08:26,567 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-13 03:08:26,568 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-13 03:08:26,570 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-13 03:08:26,570 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-13 03:08:26,571 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-13 03:08:26,571 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-13 03:08:26,572 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-13 03:08:26,572 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-13 03:08:26,573 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-13 03:08:26,573 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-13 03:08:26,574 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-13 03:08:26,575 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-13 03:08:26,575 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-13 03:08:26,576 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-13 03:08:26,576 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-13 03:08:26,576 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-13 03:08:26,577 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-13 03:08:26,577 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-13 03:08:26,579 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-13 03:08:26,580 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2022-07-13 03:08:26,599 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-13 03:08:26,599 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-13 03:08:26,599 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-13 03:08:26,600 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-13 03:08:26,600 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-13 03:08:26,601 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-13 03:08:26,601 INFO L138 SettingsManager]: * Use SBE=true [2022-07-13 03:08:26,601 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-13 03:08:26,601 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-13 03:08:26,601 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-13 03:08:26,602 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-13 03:08:26,602 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-13 03:08:26,602 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-13 03:08:26,602 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-13 03:08:26,602 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-13 03:08:26,603 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-13 03:08:26,603 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-13 03:08:26,603 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-13 03:08:26,603 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-13 03:08:26,603 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-13 03:08:26,604 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-13 03:08:26,604 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-13 03:08:26,604 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-13 03:08:26,604 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-13 03:08:26,604 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-13 03:08:26,605 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-13 03:08:26,605 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-13 03:08:26,605 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-13 03:08:26,606 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-13 03:08:26,606 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 -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c204b56aba09d3ce87e17edffdff1d33aa0b4dc87a1e1140339548dffa982588 [2022-07-13 03:08:26,797 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-13 03:08:26,821 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-13 03:08:26,824 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-13 03:08:26,825 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-13 03:08:26,826 INFO L275 PluginConnector]: CDTParser initialized [2022-07-13 03:08:26,827 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/Binomial.c [2022-07-13 03:08:26,900 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b385ecf02/68cfd3351b2543839fb462ce2753170b/FLAG481c087fa [2022-07-13 03:08:27,230 INFO L306 CDTParser]: Found 1 translation units. [2022-07-13 03:08:27,230 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-numeric/Binomial.c [2022-07-13 03:08:27,235 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b385ecf02/68cfd3351b2543839fb462ce2753170b/FLAG481c087fa [2022-07-13 03:08:27,247 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b385ecf02/68cfd3351b2543839fb462ce2753170b [2022-07-13 03:08:27,251 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-13 03:08:27,252 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-07-13 03:08:27,254 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-13 03:08:27,254 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-13 03:08:27,256 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-13 03:08:27,257 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,258 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6ceed31c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27, skipping insertion in model container [2022-07-13 03:08:27,258 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,263 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-13 03:08:27,272 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-13 03:08:27,435 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-13 03:08:27,438 INFO L203 MainTranslator]: Completed pre-run [2022-07-13 03:08:27,457 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-13 03:08:27,466 INFO L208 MainTranslator]: Completed translation [2022-07-13 03:08:27,467 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27 WrapperNode [2022-07-13 03:08:27,467 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-13 03:08:27,468 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-13 03:08:27,468 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-13 03:08:27,468 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-13 03:08:27,475 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:08:27" (1/1) ... [2022-07-13 03:08:27,479 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:08:27" (1/1) ... [2022-07-13 03:08:27,502 INFO L137 Inliner]: procedures = 6, calls = 8, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 55 [2022-07-13 03:08:27,502 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-13 03:08:27,503 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-13 03:08:27,503 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-13 03:08:27,503 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-13 03:08:27,509 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,509 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,512 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,512 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,519 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,523 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,527 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,528 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-13 03:08:27,529 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-13 03:08:27,529 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-13 03:08:27,529 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-13 03:08:27,531 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (1/1) ... [2022-07-13 03:08:27,538 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:27,545 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:27,562 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:08:27,564 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:08:27,589 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2022-07-13 03:08:27,590 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2022-07-13 03:08:27,590 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-13 03:08:27,591 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-13 03:08:27,631 INFO L234 CfgBuilder]: Building ICFG [2022-07-13 03:08:27,633 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-13 03:08:27,726 INFO L275 CfgBuilder]: Performing block encoding [2022-07-13 03:08:27,732 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-13 03:08:27,732 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-07-13 03:08:27,734 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.07 03:08:27 BoogieIcfgContainer [2022-07-13 03:08:27,734 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-13 03:08:27,735 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-13 03:08:27,735 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-13 03:08:27,738 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-13 03:08:27,738 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:08:27,739 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 13.07 03:08:27" (1/3) ... [2022-07-13 03:08:27,739 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@e9bea4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.07 03:08:27, skipping insertion in model container [2022-07-13 03:08:27,740 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:08:27,740 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.07 03:08:27" (2/3) ... [2022-07-13 03:08:27,740 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@e9bea4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.07 03:08:27, skipping insertion in model container [2022-07-13 03:08:27,740 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-13 03:08:27,740 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.07 03:08:27" (3/3) ... [2022-07-13 03:08:27,741 INFO L354 chiAutomizerObserver]: Analyzing ICFG Binomial.c [2022-07-13 03:08:27,785 INFO L255 stractBuchiCegarLoop]: Interprodecural is true [2022-07-13 03:08:27,785 INFO L256 stractBuchiCegarLoop]: Hoare is false [2022-07-13 03:08:27,785 INFO L257 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-13 03:08:27,785 INFO L258 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-13 03:08:27,785 INFO L259 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-13 03:08:27,786 INFO L260 stractBuchiCegarLoop]: Difference is false [2022-07-13 03:08:27,786 INFO L261 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-13 03:08:27,786 INFO L265 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-13 03:08:27,789 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-13 03:08:27,806 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-13 03:08:27,815 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:27,815 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:27,819 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-13 03:08:27,819 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:08:27,819 INFO L287 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-13 03:08:27,820 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-13 03:08:27,823 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-13 03:08:27,823 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:27,824 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:27,824 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-13 03:08:27,824 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:08:27,829 INFO L752 eck$LassoCheckResult]: Stem: 18#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true; 9#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 17#L35true assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 27#L38true assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 13#L41-3true [2022-07-13 03:08:27,829 INFO L754 eck$LassoCheckResult]: Loop: 13#L41-3true assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 22#L42-3true assume !(main_~k~0#1 <= main_~x~0#1); 14#L41-2true main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 13#L41-3true [2022-07-13 03:08:27,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:27,855 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 1 times [2022-07-13 03:08:27,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:27,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1677405409] [2022-07-13 03:08:27,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:27,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:27,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:27,935 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:27,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:27,966 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:27,969 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:27,970 INFO L85 PathProgramCache]: Analyzing trace with hash 57812, now seen corresponding path program 1 times [2022-07-13 03:08:27,970 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:27,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [149924979] [2022-07-13 03:08:27,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:27,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:27,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:27,992 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:27,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:28,001 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:28,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:28,004 INFO L85 PathProgramCache]: Analyzing trace with hash 553673357, now seen corresponding path program 1 times [2022-07-13 03:08:28,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:28,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [880213658] [2022-07-13 03:08:28,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:28,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:28,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:28,093 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:08:28,094 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:28,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [880213658] [2022-07-13 03:08:28,095 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [880213658] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:08:28,095 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:08:28,096 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-13 03:08:28,096 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [673277914] [2022-07-13 03:08:28,097 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:08:28,152 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:28,153 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:28,153 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:28,153 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:28,154 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:08:28,154 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,154 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:28,154 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:28,155 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2022-07-13 03:08:28,155 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:28,155 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:28,169 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:08:28,175 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:08:28,219 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:28,220 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:08:28,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,227 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:08:28,234 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:28,235 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:28,244 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:08:28,254 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:28,254 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:28,271 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:08:28,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,273 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:08:28,273 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:08:28,275 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:28,279 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:28,311 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2022-07-13 03:08:28,311 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,313 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:08:28,318 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:08:28,319 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:08:28,323 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:28,489 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:08:28,492 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:08:28,493 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:28,493 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:28,493 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:28,493 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:28,493 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:08:28,493 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,493 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:28,493 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:28,493 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2022-07-13 03:08:28,493 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:28,493 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:28,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:08:28,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:08:28,556 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:28,560 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:08:28,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,561 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,568 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:08:28,569 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:08:28,571 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:08:28,578 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:28,578 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:28,579 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:28,579 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:28,579 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:28,581 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:28,581 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:28,583 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:28,600 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:08:28,600 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,602 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:08:28,603 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:08:28,604 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:08:28,609 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:28,610 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:28,610 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:28,610 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:28,610 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:28,613 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:28,613 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:28,630 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:08:28,636 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-13 03:08:28,637 INFO L444 ModelExtractionUtils]: 1 out of 5 variables were initially zero. Simplification set additionally 2 variables to zero. [2022-07-13 03:08:28,638 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:28,638 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:28,643 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:08:28,646 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:08:28,647 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:08:28,647 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:08:28,647 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:08:28,647 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -1*ULTIMATE.start_main_~n~0#1 Supporting invariants [] [2022-07-13 03:08:28,662 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:28,665 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:08:28,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:28,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:28,697 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-13 03:08:28,698 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:28,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:28,714 WARN L261 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:08:28,714 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:28,780 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:08:28,792 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:08:28,815 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2022-07-13 03:08:28,816 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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:08:28,888 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7). Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 73 states and 106 transitions. Complement of second has 11 states. [2022-07-13 03:08:28,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2022-07-13 03:08:28,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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:08:28,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-07-13 03:08:28,896 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 3 letters. [2022-07-13 03:08:28,897 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:28,897 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 7 letters. Loop has 3 letters. [2022-07-13 03:08:28,897 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:28,897 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 6 letters. [2022-07-13 03:08:28,898 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:28,898 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 73 states and 106 transitions. [2022-07-13 03:08:28,904 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-13 03:08:28,909 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 73 states to 33 states and 48 transitions. [2022-07-13 03:08:28,910 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2022-07-13 03:08:28,910 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 30 [2022-07-13 03:08:28,911 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33 states and 48 transitions. [2022-07-13 03:08:28,911 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:28,911 INFO L369 hiAutomatonCegarLoop]: Abstraction has 33 states and 48 transitions. [2022-07-13 03:08:28,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states and 48 transitions. [2022-07-13 03:08:28,929 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 30. [2022-07-13 03:08:28,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-13 03:08:28,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 42 transitions. [2022-07-13 03:08:28,931 INFO L392 hiAutomatonCegarLoop]: Abstraction has 30 states and 42 transitions. [2022-07-13 03:08:28,931 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:28,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-13 03:08:28,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-13 03:08:28,934 INFO L87 Difference]: Start difference. First operand 30 states and 42 transitions. Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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:08:28,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:28,984 INFO L93 Difference]: Finished difference Result 29 states and 38 transitions. [2022-07-13 03:08:28,985 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-07-13 03:08:28,985 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 38 transitions. [2022-07-13 03:08:28,987 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2022-07-13 03:08:28,988 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 28 states and 37 transitions. [2022-07-13 03:08:28,988 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2022-07-13 03:08:28,989 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2022-07-13 03:08:28,989 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 37 transitions. [2022-07-13 03:08:28,989 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-13 03:08:28,989 INFO L369 hiAutomatonCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-07-13 03:08:28,989 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 37 transitions. [2022-07-13 03:08:28,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 26. [2022-07-13 03:08:28,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 17 states have internal predecessors, (21), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-13 03:08:28,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 35 transitions. [2022-07-13 03:08:28,993 INFO L392 hiAutomatonCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-07-13 03:08:28,993 INFO L374 stractBuchiCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-07-13 03:08:28,993 INFO L287 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-13 03:08:28,993 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 26 states and 35 transitions. [2022-07-13 03:08:28,994 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2022-07-13 03:08:28,994 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:28,994 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:28,995 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-13 03:08:28,995 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:28,995 INFO L752 eck$LassoCheckResult]: Stem: 242#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 233#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 234#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 241#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 237#L41-3 [2022-07-13 03:08:28,996 INFO L754 eck$LassoCheckResult]: Loop: 237#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 238#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 243#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 224#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#68#return; 226#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#70#return; 222#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#72#return; 228#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 239#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 236#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 240#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 237#L41-3 [2022-07-13 03:08:28,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:28,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 2 times [2022-07-13 03:08:28,997 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:28,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [593892147] [2022-07-13 03:08:28,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:28,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:29,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,001 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:29,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,004 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:29,005 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:29,005 INFO L85 PathProgramCache]: Analyzing trace with hash -743603515, now seen corresponding path program 1 times [2022-07-13 03:08:29,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:29,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [711504630] [2022-07-13 03:08:29,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:29,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:29,018 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:29,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1302549499] [2022-07-13 03:08:29,018 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:29,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:29,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,020 INFO L229 MonitoredProcess]: Starting monitored process 8 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:08:29,070 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-07-13 03:08:29,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,079 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:29,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,095 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:29,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:29,096 INFO L85 PathProgramCache]: Analyzing trace with hash 343305470, now seen corresponding path program 1 times [2022-07-13 03:08:29,096 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:29,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613981641] [2022-07-13 03:08:29,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:29,097 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:29,107 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:29,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1566185387] [2022-07-13 03:08:29,108 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:29,108 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:29,108 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,140 INFO L229 MonitoredProcess]: Starting monitored process 9 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:08:29,141 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-07-13 03:08:29,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,173 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:29,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:29,192 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:29,482 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:29,482 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:29,482 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:29,482 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:29,483 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:08:29,483 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,483 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:29,483 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:29,483 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2022-07-13 03:08:29,483 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:29,483 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:29,485 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:08:29,487 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:08:29,489 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:08:29,491 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:08:29,493 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:08:29,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:08:29,497 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:08:29,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:08:29,601 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:29,601 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:08:29,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,607 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:08:29,639 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:08:29,640 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,640 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,661 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,662 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,684 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:08:29,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,687 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:08:29,699 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:08:29,699 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,699 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,705 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,705 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret9#1=0} Honda state: {ULTIMATE.start_main_#t~ret9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,720 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:08:29,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,722 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:08:29,723 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:08:29,724 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,724 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,730 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,731 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,745 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:08:29,746 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,746 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,747 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:08:29,747 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:08:29,749 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,749 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,755 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,756 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,771 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:08:29,771 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,772 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:08:29,774 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:08:29,774 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,774 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,780 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,780 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,795 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:08:29,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,796 INFO L229 MonitoredProcess]: Starting monitored process 15 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:08:29,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2022-07-13 03:08:29,799 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,799 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,811 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,811 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,830 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:29,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,831 INFO L229 MonitoredProcess]: Starting monitored process 16 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:08:29,832 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2022-07-13 03:08:29,834 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,834 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,840 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:29,840 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:29,855 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:29,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,856 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,857 INFO L229 MonitoredProcess]: Starting monitored process 17 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:08:29,857 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2022-07-13 03:08:29,858 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:29,858 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:29,909 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:29,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:29,910 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:29,911 INFO L229 MonitoredProcess]: Starting monitored process 18 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:08:29,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2022-07-13 03:08:29,917 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:08:29,917 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:30,281 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:08:30,286 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,286 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:30,286 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:30,286 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:30,286 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:30,286 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:08:30,286 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,286 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:30,286 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:30,286 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2022-07-13 03:08:30,286 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:30,287 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:30,288 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:08:30,291 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:08:30,293 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:08:30,295 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:08:30,297 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:08:30,299 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:08:30,301 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:08:30,303 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:08:30,400 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:30,400 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:08:30,400 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,400 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,404 INFO L229 MonitoredProcess]: Starting monitored process 19 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:08:30,406 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2022-07-13 03:08:30,407 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:08:30,414 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,414 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,414 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,414 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,414 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,415 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,415 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,422 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,437 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Ended with exit code 0 [2022-07-13 03:08:30,437 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,437 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,438 INFO L229 MonitoredProcess]: Starting monitored process 20 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:08:30,440 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2022-07-13 03:08:30,440 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:08:30,447 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,447 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,447 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,447 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,447 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,448 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,448 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,458 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,476 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,476 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,476 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,477 INFO L229 MonitoredProcess]: Starting monitored process 21 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:08:30,478 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2022-07-13 03:08:30,479 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:08:30,484 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,484 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,484 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,484 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,484 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,485 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,485 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,489 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,506 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,507 INFO L229 MonitoredProcess]: Starting monitored process 22 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:08:30,511 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2022-07-13 03:08:30,512 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:08:30,517 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,517 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,517 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,517 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,517 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,518 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,518 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,522 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,537 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,537 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,538 INFO L229 MonitoredProcess]: Starting monitored process 23 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:08:30,539 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2022-07-13 03:08:30,540 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:08:30,545 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,545 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,545 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,545 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,545 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,546 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,546 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,557 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,572 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,573 INFO L229 MonitoredProcess]: Starting monitored process 24 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:08:30,574 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2022-07-13 03:08:30,575 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:08:30,580 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,581 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,581 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,581 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,581 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,581 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,582 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,584 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,598 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Ended with exit code 0 [2022-07-13 03:08:30,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,599 INFO L229 MonitoredProcess]: Starting monitored process 25 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:08:30,600 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2022-07-13 03:08:30,601 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:08:30,606 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,606 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,606 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,606 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,606 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,607 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,607 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,608 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:08:30,622 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2022-07-13 03:08:30,622 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,622 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,623 INFO L229 MonitoredProcess]: Starting monitored process 26 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:08:30,624 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2022-07-13 03:08:30,625 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:08:30,630 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:30,630 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:30,631 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:30,631 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:08:30,631 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:30,635 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:08:30,635 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:30,647 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:08:30,657 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-13 03:08:30,657 INFO L444 ModelExtractionUtils]: 5 out of 9 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-13 03:08:30,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:30,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:30,675 INFO L229 MonitoredProcess]: Starting monitored process 27 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:08:30,678 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:08:30,678 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:08:30,678 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:08:30,678 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 1 Supporting invariants [] [2022-07-13 03:08:30,679 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2022-07-13 03:08:30,699 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:30,701 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:08:30,712 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:30,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:30,717 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-13 03:08:30,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:30,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:30,746 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:08:30,749 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:30,853 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-07-13 03:08:30,853 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 6 loop predicates [2022-07-13 03:08:30,853 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 26 states and 35 transitions. cyclomatic complexity: 11 Second operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-07-13 03:08:31,098 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Ended with exit code 0 [2022-07-13 03:08:31,110 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 26 states and 35 transitions. cyclomatic complexity: 11. Second operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Result 117 states and 182 transitions. Complement of second has 26 states. [2022-07-13 03:08:31,111 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 8 states 1 stem states 6 non-accepting loop states 1 accepting loop states [2022-07-13 03:08:31,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-07-13 03:08:31,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 74 transitions. [2022-07-13 03:08:31,114 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 4 letters. Loop has 23 letters. [2022-07-13 03:08:31,115 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:31,115 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 27 letters. Loop has 23 letters. [2022-07-13 03:08:31,116 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:31,116 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 4 letters. Loop has 46 letters. [2022-07-13 03:08:31,118 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:31,119 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 117 states and 182 transitions. [2022-07-13 03:08:31,133 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 33 [2022-07-13 03:08:31,140 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 117 states to 116 states and 181 transitions. [2022-07-13 03:08:31,141 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 59 [2022-07-13 03:08:31,142 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2022-07-13 03:08:31,142 INFO L73 IsDeterministic]: Start isDeterministic. Operand 116 states and 181 transitions. [2022-07-13 03:08:31,142 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:31,142 INFO L369 hiAutomatonCegarLoop]: Abstraction has 116 states and 181 transitions. [2022-07-13 03:08:31,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states and 181 transitions. [2022-07-13 03:08:31,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 105. [2022-07-13 03:08:31,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 68 states have internal predecessors, (82), 30 states have call successors, (30), 6 states have call predecessors, (30), 8 states have return successors, (42), 30 states have call predecessors, (42), 30 states have call successors, (42) [2022-07-13 03:08:31,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 154 transitions. [2022-07-13 03:08:31,162 INFO L392 hiAutomatonCegarLoop]: Abstraction has 105 states and 154 transitions. [2022-07-13 03:08:31,162 INFO L374 stractBuchiCegarLoop]: Abstraction has 105 states and 154 transitions. [2022-07-13 03:08:31,163 INFO L287 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-13 03:08:31,163 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 105 states and 154 transitions. [2022-07-13 03:08:31,165 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 32 [2022-07-13 03:08:31,165 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:31,165 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:31,167 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-13 03:08:31,167 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:31,167 INFO L752 eck$LassoCheckResult]: Stem: 556#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 536#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 537#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 555#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 565#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 546#L42-3 [2022-07-13 03:08:31,167 INFO L754 eck$LassoCheckResult]: Loop: 546#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 560#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 574#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#68#return; 576#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#70#return; 514#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#72#return; 571#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 569#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 567#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 566#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 553#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 545#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 546#L42-3 [2022-07-13 03:08:31,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:31,169 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 1 times [2022-07-13 03:08:31,169 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:31,169 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1116143056] [2022-07-13 03:08:31,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:31,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:31,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:31,179 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:31,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:31,186 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:31,186 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:31,186 INFO L85 PathProgramCache]: Analyzing trace with hash 471779129, now seen corresponding path program 1 times [2022-07-13 03:08:31,186 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:31,187 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1802443133] [2022-07-13 03:08:31,187 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:31,187 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:31,202 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:31,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [201042828] [2022-07-13 03:08:31,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:31,203 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:31,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:31,208 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:08:31,209 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:08:31,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:31,243 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-13 03:08:31,247 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:31,335 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 8 proven. 35 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-07-13 03:08:31,336 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:31,524 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 8 proven. 36 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-07-13 03:08:31,525 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:31,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1802443133] [2022-07-13 03:08:31,525 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:31,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [201042828] [2022-07-13 03:08:31,525 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [201042828] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:31,525 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:31,526 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 13 [2022-07-13 03:08:31,526 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [980546414] [2022-07-13 03:08:31,526 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:31,527 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:31,527 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:31,528 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-07-13 03:08:31,528 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-07-13 03:08:31,529 INFO L87 Difference]: Start difference. First operand 105 states and 154 transitions. cyclomatic complexity: 54 Second operand has 13 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 4 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-07-13 03:08:31,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:31,819 INFO L93 Difference]: Finished difference Result 307 states and 482 transitions. [2022-07-13 03:08:31,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-07-13 03:08:31,820 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 307 states and 482 transitions. [2022-07-13 03:08:31,824 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 112 [2022-07-13 03:08:31,843 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 307 states to 307 states and 482 transitions. [2022-07-13 03:08:31,843 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 151 [2022-07-13 03:08:31,845 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 151 [2022-07-13 03:08:31,845 INFO L73 IsDeterministic]: Start isDeterministic. Operand 307 states and 482 transitions. [2022-07-13 03:08:31,845 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:31,845 INFO L369 hiAutomatonCegarLoop]: Abstraction has 307 states and 482 transitions. [2022-07-13 03:08:31,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 307 states and 482 transitions. [2022-07-13 03:08:31,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 307 to 149. [2022-07-13 03:08:31,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 149 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 88 states have internal predecessors, (102), 46 states have call successors, (46), 10 states have call predecessors, (46), 16 states have return successors, (116), 50 states have call predecessors, (116), 46 states have call successors, (116) [2022-07-13 03:08:31,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 264 transitions. [2022-07-13 03:08:31,881 INFO L392 hiAutomatonCegarLoop]: Abstraction has 149 states and 264 transitions. [2022-07-13 03:08:31,881 INFO L374 stractBuchiCegarLoop]: Abstraction has 149 states and 264 transitions. [2022-07-13 03:08:31,881 INFO L287 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-13 03:08:31,881 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 149 states and 264 transitions. [2022-07-13 03:08:31,883 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 40 [2022-07-13 03:08:31,883 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:31,883 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:31,885 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-13 03:08:31,885 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:31,885 INFO L752 eck$LassoCheckResult]: Stem: 1233#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 1210#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 1211#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1232#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 1263#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1221#L42-3 [2022-07-13 03:08:31,886 INFO L754 eck$LassoCheckResult]: Loop: 1221#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1234#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 1235#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 1268#factENTRY ~n := #in~n; 1275#L25 assume !(~n <= 0); 1186#L26 call #t~ret0 := fact(~n - 1);< 1216#factENTRY ~n := #in~n; 1266#L25 assume !(~n <= 0); 1185#L26 call #t~ret0 := fact(~n - 1);< 1216#factENTRY ~n := #in~n; 1266#L25 assume ~n <= 0;#res := 1; 1200#factFINAL assume true; 1184#factEXIT >#66#return; 1188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1307#factFINAL assume true; 1305#factEXIT >#66#return; 1306#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1316#factFINAL assume true; 1278#factEXIT >#68#return; 1270#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 1268#factENTRY ~n := #in~n; 1275#L25 assume ~n <= 0;#res := 1; 1256#factFINAL assume true; 1287#factEXIT >#70#return; 1272#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 1268#factENTRY ~n := #in~n; 1275#L25 assume ~n <= 0;#res := 1; 1256#factFINAL assume true; 1287#factEXIT >#72#return; 1224#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 1225#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 1310#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 1309#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1230#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1220#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1221#L42-3 [2022-07-13 03:08:31,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:31,887 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 2 times [2022-07-13 03:08:31,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:31,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [623333150] [2022-07-13 03:08:31,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:31,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:31,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:31,906 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:31,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:31,908 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:31,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:31,909 INFO L85 PathProgramCache]: Analyzing trace with hash -2146445903, now seen corresponding path program 2 times [2022-07-13 03:08:31,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:31,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [885493247] [2022-07-13 03:08:31,910 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:31,910 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:31,916 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:31,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [357750811] [2022-07-13 03:08:31,916 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:08:31,916 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:31,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:31,918 INFO L229 MonitoredProcess]: Starting monitored process 29 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:08:31,919 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-07-13 03:08:31,951 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:08:31,952 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:08:31,952 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-13 03:08:31,954 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:32,018 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 14 proven. 15 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-07-13 03:08:32,018 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:32,212 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 13 proven. 14 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-07-13 03:08:32,213 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:32,213 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [885493247] [2022-07-13 03:08:32,213 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:32,213 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [357750811] [2022-07-13 03:08:32,213 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [357750811] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:32,213 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:32,213 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-07-13 03:08:32,214 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1361390661] [2022-07-13 03:08:32,214 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:32,214 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:32,214 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:32,215 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-07-13 03:08:32,215 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=143, Unknown=0, NotChecked=0, Total=182 [2022-07-13 03:08:32,215 INFO L87 Difference]: Start difference. First operand 149 states and 264 transitions. cyclomatic complexity: 120 Second operand has 14 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 8 states have call successors, (8), 1 states have call predecessors, (8), 4 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-07-13 03:08:32,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:32,562 INFO L93 Difference]: Finished difference Result 377 states and 584 transitions. [2022-07-13 03:08:32,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-07-13 03:08:32,563 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 377 states and 584 transitions. [2022-07-13 03:08:32,567 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 123 [2022-07-13 03:08:32,578 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 377 states to 365 states and 564 transitions. [2022-07-13 03:08:32,578 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 178 [2022-07-13 03:08:32,578 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 178 [2022-07-13 03:08:32,579 INFO L73 IsDeterministic]: Start isDeterministic. Operand 365 states and 564 transitions. [2022-07-13 03:08:32,579 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:32,579 INFO L369 hiAutomatonCegarLoop]: Abstraction has 365 states and 564 transitions. [2022-07-13 03:08:32,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 365 states and 564 transitions. [2022-07-13 03:08:32,604 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 365 to 183. [2022-07-13 03:08:32,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 183 states, 107 states have (on average 1.1401869158878504) internal successors, (122), 102 states have internal predecessors, (122), 60 states have call successors, (60), 20 states have call predecessors, (60), 16 states have return successors, (126), 60 states have call predecessors, (126), 60 states have call successors, (126) [2022-07-13 03:08:32,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 183 states to 183 states and 308 transitions. [2022-07-13 03:08:32,607 INFO L392 hiAutomatonCegarLoop]: Abstraction has 183 states and 308 transitions. [2022-07-13 03:08:32,607 INFO L374 stractBuchiCegarLoop]: Abstraction has 183 states and 308 transitions. [2022-07-13 03:08:32,607 INFO L287 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2022-07-13 03:08:32,608 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 183 states and 308 transitions. [2022-07-13 03:08:32,609 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 45 [2022-07-13 03:08:32,609 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:32,609 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:32,611 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-13 03:08:32,611 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [7, 7, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:32,611 INFO L752 eck$LassoCheckResult]: Stem: 1997#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 1972#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 1973#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1996#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 2034#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1987#L42-3 [2022-07-13 03:08:32,611 INFO L754 eck$LassoCheckResult]: Loop: 1987#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1998#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 2000#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 2095#factENTRY ~n := #in~n; 2112#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume !(~n <= 0); 1945#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1948#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2087#factFINAL assume true; 2084#factEXIT >#66#return; 2081#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2082#factFINAL assume true; 2062#factEXIT >#74#return; 2009#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 2095#factENTRY ~n := #in~n; 2112#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1949#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2011#factFINAL assume true; 2059#factEXIT >#76#return; 2005#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 2109#factENTRY ~n := #in~n; 2111#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1949#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2011#factFINAL assume true; 2059#factEXIT >#78#return; 2060#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 2116#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 2115#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 2114#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1994#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1986#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1987#L42-3 [2022-07-13 03:08:32,612 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:32,612 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 3 times [2022-07-13 03:08:32,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:32,612 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1382807445] [2022-07-13 03:08:32,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:32,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:32,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:32,619 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:32,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:32,624 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:32,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:32,624 INFO L85 PathProgramCache]: Analyzing trace with hash 1703111285, now seen corresponding path program 1 times [2022-07-13 03:08:32,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:32,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2028231302] [2022-07-13 03:08:32,625 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:32,625 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:32,637 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:32,637 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1966674579] [2022-07-13 03:08:32,637 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:32,638 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:32,638 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:32,643 INFO L229 MonitoredProcess]: Starting monitored process 30 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:08:32,684 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-07-13 03:08:32,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:32,702 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:32,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:32,726 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:32,727 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:32,727 INFO L85 PathProgramCache]: Analyzing trace with hash 1023536866, now seen corresponding path program 1 times [2022-07-13 03:08:32,727 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:32,727 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1195036484] [2022-07-13 03:08:32,727 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:32,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:32,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:32,747 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-07-13 03:08:32,750 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:32,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1195036484] [2022-07-13 03:08:32,750 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2022-07-13 03:08:32,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [973212386] [2022-07-13 03:08:32,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:32,751 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:32,751 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:32,755 INFO L229 MonitoredProcess]: Starting monitored process 31 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:08:32,763 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-07-13 03:08:32,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:32,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 3 conjunts are in the unsatisfiable core [2022-07-13 03:08:32,796 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:32,816 INFO L134 CoverageAnalysis]: Checked inductivity of 98 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-13 03:08:32,816 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-13 03:08:32,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [973212386] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:08:32,816 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:08:32,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-13 03:08:32,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1370702782] [2022-07-13 03:08:32,817 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:08:33,573 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:33,573 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:33,573 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:33,573 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:33,573 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:08:33,574 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:33,574 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:33,574 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:33,574 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2022-07-13 03:08:33,574 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:33,574 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:33,575 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:08:33,579 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:08:33,580 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:08:33,582 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:08:33,584 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:08:33,585 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:08:34,779 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:08:35,205 WARN L137 XnfTransformerHelper]: expecting exponential blowup for input size 11 [2022-07-13 03:08:36,530 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:36,530 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:08:36,531 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,531 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,536 INFO L229 MonitoredProcess]: Starting monitored process 32 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:08:36,537 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2022-07-13 03:08:36,538 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,538 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,544 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:36,544 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:36,558 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Ended with exit code 0 [2022-07-13 03:08:36,559 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,559 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,560 INFO L229 MonitoredProcess]: Starting monitored process 33 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:08:36,560 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2022-07-13 03:08:36,561 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,562 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,567 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:36,567 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret10#1=0} Honda state: {ULTIMATE.start_main_#t~ret10#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:36,583 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:36,589 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,589 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,590 INFO L229 MonitoredProcess]: Starting monitored process 34 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:08:36,593 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2022-07-13 03:08:36,593 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,594 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,599 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:36,600 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:36,616 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:36,616 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,617 INFO L229 MonitoredProcess]: Starting monitored process 35 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:08:36,623 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2022-07-13 03:08:36,624 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,624 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,630 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:36,630 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:36,644 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Ended with exit code 0 [2022-07-13 03:08:36,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,645 INFO L229 MonitoredProcess]: Starting monitored process 36 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:08:36,646 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2022-07-13 03:08:36,647 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,647 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,661 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:08:36,661 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:08:36,675 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Ended with exit code 0 [2022-07-13 03:08:36,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,677 INFO L229 MonitoredProcess]: Starting monitored process 37 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:08:36,678 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2022-07-13 03:08:36,679 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:08:36,679 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,724 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:36,724 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,724 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:36,725 INFO L229 MonitoredProcess]: Starting monitored process 38 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:08:36,726 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2022-07-13 03:08:36,727 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:08:36,727 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:08:36,759 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:08:36,780 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:36,780 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:08:36,780 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:08:36,780 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:08:36,780 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:08:36,780 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:08:36,780 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:36,781 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:08:36,781 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:08:36,781 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2022-07-13 03:08:36,781 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:08:36,781 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:08:36,782 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:08:37,468 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:08:37,472 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:08:37,473 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:08:37,475 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:08:37,477 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:08:37,479 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:08:37,936 WARN L137 XnfTransformerHelper]: expecting exponential blowup for input size 11 [2022-07-13 03:08:39,446 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:08:39,446 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:08:39,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:39,446 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:39,448 INFO L229 MonitoredProcess]: Starting monitored process 39 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:08:39,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2022-07-13 03:08:39,450 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:08:39,455 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:08:39,455 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:08:39,455 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:08:39,455 INFO L204 nArgumentSynthesizer]: 4 loop disjuncts [2022-07-13 03:08:39,455 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:08:39,469 INFO L401 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2022-07-13 03:08:39,469 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:08:39,487 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:08:39,500 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:08:39,500 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-13 03:08:39,500 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:08:39,500 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:39,507 INFO L229 MonitoredProcess]: Starting monitored process 40 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:08:39,513 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:08:39,513 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:08:39,513 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:08:39,513 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 3 Supporting invariants [] [2022-07-13 03:08:39,527 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2022-07-13 03:08:39,535 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:39,536 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:08:39,545 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:39,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:39,549 INFO L263 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-13 03:08:39,549 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:39,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:39,598 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 27 conjunts are in the unsatisfiable core [2022-07-13 03:08:39,609 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:39,795 INFO L134 CoverageAnalysis]: Checked inductivity of 97 backedges. 1 proven. 51 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-07-13 03:08:39,796 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 9 loop predicates [2022-07-13 03:08:39,796 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 183 states and 308 transitions. cyclomatic complexity: 130 Second operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-07-13 03:08:40,021 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Forceful destruction successful, exit code 0 [2022-07-13 03:08:40,203 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 183 states and 308 transitions. cyclomatic complexity: 130. Second operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Result 1103 states and 1896 transitions. Complement of second has 60 states. [2022-07-13 03:08:40,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 1 stem states 9 non-accepting loop states 1 accepting loop states [2022-07-13 03:08:40,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-07-13 03:08:40,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 113 transitions. [2022-07-13 03:08:40,205 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 5 letters. Loop has 47 letters. [2022-07-13 03:08:40,206 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:40,206 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 52 letters. Loop has 47 letters. [2022-07-13 03:08:40,207 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:40,207 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 5 letters. Loop has 94 letters. [2022-07-13 03:08:40,209 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:08:40,209 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1103 states and 1896 transitions. [2022-07-13 03:08:40,221 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 95 [2022-07-13 03:08:40,232 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1103 states to 847 states and 1435 transitions. [2022-07-13 03:08:40,233 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 275 [2022-07-13 03:08:40,233 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 277 [2022-07-13 03:08:40,233 INFO L73 IsDeterministic]: Start isDeterministic. Operand 847 states and 1435 transitions. [2022-07-13 03:08:40,233 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:40,233 INFO L369 hiAutomatonCegarLoop]: Abstraction has 847 states and 1435 transitions. [2022-07-13 03:08:40,234 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 847 states and 1435 transitions. [2022-07-13 03:08:40,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 847 to 737. [2022-07-13 03:08:40,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 737 states, 452 states have (on average 1.1305309734513274) internal successors, (511), 439 states have internal predecessors, (511), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-13 03:08:40,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 737 states to 737 states and 1175 transitions. [2022-07-13 03:08:40,268 INFO L392 hiAutomatonCegarLoop]: Abstraction has 737 states and 1175 transitions. [2022-07-13 03:08:40,268 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:40,268 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-13 03:08:40,268 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-07-13 03:08:40,268 INFO L87 Difference]: Start difference. First operand 737 states and 1175 transitions. Second operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-07-13 03:08:40,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:40,303 INFO L93 Difference]: Finished difference Result 799 states and 1321 transitions. [2022-07-13 03:08:40,304 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-07-13 03:08:40,304 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 799 states and 1321 transitions. [2022-07-13 03:08:40,313 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 93 [2022-07-13 03:08:40,323 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 799 states to 799 states and 1321 transitions. [2022-07-13 03:08:40,323 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 258 [2022-07-13 03:08:40,324 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 258 [2022-07-13 03:08:40,324 INFO L73 IsDeterministic]: Start isDeterministic. Operand 799 states and 1321 transitions. [2022-07-13 03:08:40,324 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:40,324 INFO L369 hiAutomatonCegarLoop]: Abstraction has 799 states and 1321 transitions. [2022-07-13 03:08:40,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 799 states and 1321 transitions. [2022-07-13 03:08:40,342 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 799 to 741. [2022-07-13 03:08:40,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 741 states, 456 states have (on average 1.1293859649122806) internal successors, (515), 443 states have internal predecessors, (515), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-13 03:08:40,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 741 states to 741 states and 1179 transitions. [2022-07-13 03:08:40,348 INFO L392 hiAutomatonCegarLoop]: Abstraction has 741 states and 1179 transitions. [2022-07-13 03:08:40,348 INFO L374 stractBuchiCegarLoop]: Abstraction has 741 states and 1179 transitions. [2022-07-13 03:08:40,348 INFO L287 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2022-07-13 03:08:40,349 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 741 states and 1179 transitions. [2022-07-13 03:08:40,352 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2022-07-13 03:08:40,353 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:40,353 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:40,354 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:40,354 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [7, 7, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:40,354 INFO L752 eck$LassoCheckResult]: Stem: 5267#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 5239#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 5240#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5266#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 5289#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 5638#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 5376#L43 [2022-07-13 03:08:40,354 INFO L754 eck$LassoCheckResult]: Loop: 5376#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 5311#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 5318#factENTRY ~n := #in~n; 5381#L25 assume !(~n <= 0); 5330#L26 call #t~ret0 := fact(~n - 1);< 5351#factENTRY ~n := #in~n; 5365#L25 assume !(~n <= 0); 5326#L26 call #t~ret0 := fact(~n - 1);< 5351#factENTRY ~n := #in~n; 5365#L25 assume ~n <= 0;#res := 1; 5364#factFINAL assume true; 5355#factEXIT >#66#return; 5354#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5352#factFINAL assume true; 5348#factEXIT >#66#return; 5342#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5373#factFINAL assume true; 5375#factEXIT >#68#return; 5313#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 5318#factENTRY ~n := #in~n; 5381#L25 assume !(~n <= 0); 5330#L26 call #t~ret0 := fact(~n - 1);< 5351#factENTRY ~n := #in~n; 5365#L25 assume ~n <= 0;#res := 1; 5364#factFINAL assume true; 5355#factEXIT >#66#return; 5362#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5380#factFINAL assume true; 5312#factEXIT >#70#return; 5315#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 5318#factENTRY ~n := #in~n; 5381#L25 assume !(~n <= 0); 5330#L26 call #t~ret0 := fact(~n - 1);< 5351#factENTRY ~n := #in~n; 5365#L25 assume ~n <= 0;#res := 1; 5364#factFINAL assume true; 5355#factEXIT >#66#return; 5362#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5380#factFINAL assume true; 5312#factEXIT >#72#return; 5307#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 5298#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 5296#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 5294#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 5263#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 5254#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 5255#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 5376#L43 [2022-07-13 03:08:40,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:40,355 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 1 times [2022-07-13 03:08:40,355 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:40,355 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1419924953] [2022-07-13 03:08:40,355 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:40,355 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:40,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:40,359 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:40,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:40,361 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:40,362 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:40,362 INFO L85 PathProgramCache]: Analyzing trace with hash -761724715, now seen corresponding path program 3 times [2022-07-13 03:08:40,362 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:40,362 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1839925042] [2022-07-13 03:08:40,362 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:40,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:40,367 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:40,367 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [467681496] [2022-07-13 03:08:40,367 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:08:40,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:40,368 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:40,369 INFO L229 MonitoredProcess]: Starting monitored process 41 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:08:40,377 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-07-13 03:08:40,404 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-07-13 03:08:40,404 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:08:40,405 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 5 conjunts are in the unsatisfiable core [2022-07-13 03:08:40,406 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:40,436 INFO L134 CoverageAnalysis]: Checked inductivity of 97 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-13 03:08:40,436 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-13 03:08:40,436 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:40,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1839925042] [2022-07-13 03:08:40,437 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:40,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [467681496] [2022-07-13 03:08:40,437 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [467681496] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:08:40,437 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:08:40,437 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-07-13 03:08:40,437 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1892684446] [2022-07-13 03:08:40,438 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:08:40,438 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:40,438 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:40,438 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-07-13 03:08:40,439 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-07-13 03:08:40,439 INFO L87 Difference]: Start difference. First operand 741 states and 1179 transitions. cyclomatic complexity: 449 Second operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:08:40,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:40,500 INFO L93 Difference]: Finished difference Result 884 states and 1467 transitions. [2022-07-13 03:08:40,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-13 03:08:40,501 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 884 states and 1467 transitions. [2022-07-13 03:08:40,530 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 125 [2022-07-13 03:08:40,540 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 884 states to 866 states and 1449 transitions. [2022-07-13 03:08:40,540 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 284 [2022-07-13 03:08:40,540 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 284 [2022-07-13 03:08:40,541 INFO L73 IsDeterministic]: Start isDeterministic. Operand 866 states and 1449 transitions. [2022-07-13 03:08:40,544 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:40,544 INFO L369 hiAutomatonCegarLoop]: Abstraction has 866 states and 1449 transitions. [2022-07-13 03:08:40,544 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 866 states and 1449 transitions. [2022-07-13 03:08:40,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 866 to 759. [2022-07-13 03:08:40,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 759 states, 474 states have (on average 1.1244725738396624) internal successors, (533), 461 states have internal predecessors, (533), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-13 03:08:40,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 759 states to 759 states and 1197 transitions. [2022-07-13 03:08:40,568 INFO L392 hiAutomatonCegarLoop]: Abstraction has 759 states and 1197 transitions. [2022-07-13 03:08:40,569 INFO L374 stractBuchiCegarLoop]: Abstraction has 759 states and 1197 transitions. [2022-07-13 03:08:40,569 INFO L287 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2022-07-13 03:08:40,569 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 759 states and 1197 transitions. [2022-07-13 03:08:40,573 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 85 [2022-07-13 03:08:40,573 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:40,573 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:40,574 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:40,574 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [14, 14, 8, 8, 8, 8, 6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:40,574 INFO L752 eck$LassoCheckResult]: Stem: 7049#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 7019#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 7020#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 7048#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 7066#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 7444#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7165#L43 [2022-07-13 03:08:40,575 INFO L754 eck$LassoCheckResult]: Loop: 7165#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 7086#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 7154#factENTRY ~n := #in~n; 7163#L25 assume !(~n <= 0); 7092#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume ~n <= 0;#res := 1; 7131#factFINAL assume true; 7123#factEXIT >#66#return; 7124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7169#factFINAL assume true; 7159#factEXIT >#68#return; 7142#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 7154#factENTRY ~n := #in~n; 7163#L25 assume !(~n <= 0); 7092#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume !(~n <= 0); 7106#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume ~n <= 0;#res := 1; 7131#factFINAL assume true; 7123#factEXIT >#66#return; 7122#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7120#factFINAL assume true; 7116#factEXIT >#66#return; 7108#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7152#factFINAL assume true; 7153#factEXIT >#70#return; 7145#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 7161#factENTRY ~n := #in~n; 7162#L25 assume ~n <= 0;#res := 1; 7160#factFINAL assume true; 7141#factEXIT >#72#return; 7140#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 7139#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 7138#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 7136#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7072#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 7078#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 7085#factENTRY ~n := #in~n; 7167#L25 assume !(~n <= 0); 7098#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume !(~n <= 0); 7106#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume !(~n <= 0); 7106#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume ~n <= 0;#res := 1; 7131#factFINAL assume true; 7123#factEXIT >#66#return; 7122#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7120#factFINAL assume true; 7116#factEXIT >#66#return; 7114#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7115#factFINAL assume true; 7090#factEXIT >#66#return; 7089#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7088#factFINAL assume true; 7087#factEXIT >#74#return; 7077#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 7085#factENTRY ~n := #in~n; 7167#L25 assume !(~n <= 0); 7098#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume ~n <= 0;#res := 1; 7131#factFINAL assume true; 7123#factEXIT >#66#return; 7128#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7150#factFINAL assume true; 7076#factEXIT >#76#return; 7079#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 7135#factENTRY ~n := #in~n; 7134#L25 assume !(~n <= 0); 7098#L26 call #t~ret0 := fact(~n - 1);< 7119#factENTRY ~n := #in~n; 7133#L25 assume ~n <= 0;#res := 1; 7131#factFINAL assume true; 7123#factEXIT >#66#return; 7128#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7150#factFINAL assume true; 7076#factEXIT >#78#return; 7075#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 7074#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 7073#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 7071#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 7045#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 7034#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 7035#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7165#L43 [2022-07-13 03:08:40,575 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:40,575 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 2 times [2022-07-13 03:08:40,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:40,575 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371006153] [2022-07-13 03:08:40,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:40,576 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:40,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:40,579 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:40,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:40,582 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:40,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:40,582 INFO L85 PathProgramCache]: Analyzing trace with hash 1212552818, now seen corresponding path program 1 times [2022-07-13 03:08:40,582 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:40,582 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1662801297] [2022-07-13 03:08:40,582 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:40,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:40,587 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:40,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1296254790] [2022-07-13 03:08:40,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:40,588 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:40,588 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:40,589 INFO L229 MonitoredProcess]: Starting monitored process 42 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:08:40,609 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-07-13 03:08:40,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:40,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 15 conjunts are in the unsatisfiable core [2022-07-13 03:08:40,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:40,714 INFO L134 CoverageAnalysis]: Checked inductivity of 425 backedges. 218 proven. 27 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-07-13 03:08:40,714 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:40,955 INFO L134 CoverageAnalysis]: Checked inductivity of 425 backedges. 8 proven. 167 refuted. 0 times theorem prover too weak. 250 trivial. 0 not checked. [2022-07-13 03:08:40,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:40,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1662801297] [2022-07-13 03:08:40,955 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:40,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1296254790] [2022-07-13 03:08:40,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1296254790] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:40,956 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:40,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 12] total 15 [2022-07-13 03:08:40,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [194360376] [2022-07-13 03:08:40,956 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:40,956 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:40,956 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:40,957 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-07-13 03:08:40,957 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-07-13 03:08:40,957 INFO L87 Difference]: Start difference. First operand 759 states and 1197 transitions. cyclomatic complexity: 449 Second operand has 15 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 14 states have internal predecessors, (43), 10 states have call successors, (18), 2 states have call predecessors, (18), 6 states have return successors, (18), 6 states have call predecessors, (18), 10 states have call successors, (18) [2022-07-13 03:08:41,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:41,221 INFO L93 Difference]: Finished difference Result 975 states and 1525 transitions. [2022-07-13 03:08:41,222 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-07-13 03:08:41,222 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 975 states and 1525 transitions. [2022-07-13 03:08:41,233 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 127 [2022-07-13 03:08:41,269 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 975 states to 970 states and 1510 transitions. [2022-07-13 03:08:41,269 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 306 [2022-07-13 03:08:41,270 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 306 [2022-07-13 03:08:41,270 INFO L73 IsDeterministic]: Start isDeterministic. Operand 970 states and 1510 transitions. [2022-07-13 03:08:41,270 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:41,270 INFO L369 hiAutomatonCegarLoop]: Abstraction has 970 states and 1510 transitions. [2022-07-13 03:08:41,271 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 970 states and 1510 transitions. [2022-07-13 03:08:41,294 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 970 to 813. [2022-07-13 03:08:41,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 516 states have (on average 1.1375968992248062) internal successors, (587), 494 states have internal predecessors, (587), 206 states have call successors, (206), 113 states have call predecessors, (206), 91 states have return successors, (465), 205 states have call predecessors, (465), 206 states have call successors, (465) [2022-07-13 03:08:41,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1258 transitions. [2022-07-13 03:08:41,300 INFO L392 hiAutomatonCegarLoop]: Abstraction has 813 states and 1258 transitions. [2022-07-13 03:08:41,300 INFO L374 stractBuchiCegarLoop]: Abstraction has 813 states and 1258 transitions. [2022-07-13 03:08:41,300 INFO L287 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2022-07-13 03:08:41,300 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 813 states and 1258 transitions. [2022-07-13 03:08:41,305 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 85 [2022-07-13 03:08:41,305 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:41,305 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:41,308 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:41,308 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [15, 15, 9, 9, 9, 9, 6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:41,308 INFO L752 eck$LassoCheckResult]: Stem: 9358#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 9330#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 9331#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 9357#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 9383#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 9769#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9359#L43 [2022-07-13 03:08:41,310 INFO L754 eck$LassoCheckResult]: Loop: 9359#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 9360#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9482#factENTRY ~n := #in~n; 9489#L25 assume !(~n <= 0); 9411#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume !(~n <= 0); 9408#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9437#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9435#factFINAL assume true; 9431#factEXIT >#66#return; 9423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9492#factFINAL assume true; 9483#factEXIT >#68#return; 9473#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9482#factENTRY ~n := #in~n; 9489#L25 assume !(~n <= 0); 9411#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9444#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9480#factFINAL assume true; 9481#factEXIT >#70#return; 9472#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9482#factENTRY ~n := #in~n; 9489#L25 assume !(~n <= 0); 9411#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9444#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9480#factFINAL assume true; 9481#factEXIT >#72#return; 9470#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 9469#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 9468#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9463#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9388#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 9395#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9400#factENTRY ~n := #in~n; 9457#L25 assume !(~n <= 0); 9413#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume !(~n <= 0); 9408#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume !(~n <= 0); 9408#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9437#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9435#factFINAL assume true; 9431#factEXIT >#66#return; 9424#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9430#factFINAL assume true; 9404#factEXIT >#66#return; 9403#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9402#factFINAL assume true; 9401#factEXIT >#74#return; 9394#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9400#factENTRY ~n := #in~n; 9457#L25 assume !(~n <= 0); 9413#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9446#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9458#factFINAL assume true; 9392#factEXIT >#76#return; 9393#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9396#factENTRY ~n := #in~n; 9456#L25 assume !(~n <= 0); 9413#L26 call #t~ret0 := fact(~n - 1);< 9434#factENTRY ~n := #in~n; 9454#L25 assume ~n <= 0;#res := 1; 9450#factFINAL assume true; 9438#factEXIT >#66#return; 9446#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9458#factFINAL assume true; 9392#factEXIT >#78#return; 9391#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 9390#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 9389#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9387#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 9354#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 9346#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 9347#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9359#L43 [2022-07-13 03:08:41,311 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:41,311 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 3 times [2022-07-13 03:08:41,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:41,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1835364238] [2022-07-13 03:08:41,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:41,312 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:41,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:41,317 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:41,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:41,324 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:41,325 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:41,326 INFO L85 PathProgramCache]: Analyzing trace with hash 1796773690, now seen corresponding path program 2 times [2022-07-13 03:08:41,326 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:41,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1000785002] [2022-07-13 03:08:41,326 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:41,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:41,342 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:41,343 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [83394697] [2022-07-13 03:08:41,343 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:08:41,343 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:41,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:41,348 INFO L229 MonitoredProcess]: Starting monitored process 43 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:08:41,350 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-07-13 03:08:41,400 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:08:41,401 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:08:41,402 INFO L263 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 16 conjunts are in the unsatisfiable core [2022-07-13 03:08:41,404 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:41,517 INFO L134 CoverageAnalysis]: Checked inductivity of 497 backedges. 281 proven. 51 refuted. 0 times theorem prover too weak. 165 trivial. 0 not checked. [2022-07-13 03:08:41,518 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:41,839 INFO L134 CoverageAnalysis]: Checked inductivity of 497 backedges. 17 proven. 179 refuted. 0 times theorem prover too weak. 301 trivial. 0 not checked. [2022-07-13 03:08:41,839 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:41,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1000785002] [2022-07-13 03:08:41,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:41,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [83394697] [2022-07-13 03:08:41,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [83394697] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:41,839 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:41,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 14] total 20 [2022-07-13 03:08:41,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1419532980] [2022-07-13 03:08:41,840 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:41,840 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:41,840 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:41,841 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-07-13 03:08:41,841 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=318, Unknown=0, NotChecked=0, Total=380 [2022-07-13 03:08:41,841 INFO L87 Difference]: Start difference. First operand 813 states and 1258 transitions. cyclomatic complexity: 456 Second operand has 20 states, 16 states have (on average 3.125) internal successors, (50), 18 states have internal predecessors, (50), 13 states have call successors, (19), 2 states have call predecessors, (19), 6 states have return successors, (19), 9 states have call predecessors, (19), 13 states have call successors, (19) [2022-07-13 03:08:42,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:42,466 INFO L93 Difference]: Finished difference Result 1242 states and 1955 transitions. [2022-07-13 03:08:42,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-07-13 03:08:42,467 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1242 states and 1955 transitions. [2022-07-13 03:08:42,479 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 232 [2022-07-13 03:08:42,492 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1242 states to 1242 states and 1955 transitions. [2022-07-13 03:08:42,493 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 409 [2022-07-13 03:08:42,493 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 409 [2022-07-13 03:08:42,493 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1242 states and 1955 transitions. [2022-07-13 03:08:42,493 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:42,494 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1242 states and 1955 transitions. [2022-07-13 03:08:42,494 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1242 states and 1955 transitions. [2022-07-13 03:08:42,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1242 to 990. [2022-07-13 03:08:42,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 990 states, 628 states have (on average 1.1130573248407643) internal successors, (699), 594 states have internal predecessors, (699), 271 states have call successors, (271), 113 states have call predecessors, (271), 91 states have return successors, (605), 282 states have call predecessors, (605), 271 states have call successors, (605) [2022-07-13 03:08:42,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 990 states to 990 states and 1575 transitions. [2022-07-13 03:08:42,524 INFO L392 hiAutomatonCegarLoop]: Abstraction has 990 states and 1575 transitions. [2022-07-13 03:08:42,525 INFO L374 stractBuchiCegarLoop]: Abstraction has 990 states and 1575 transitions. [2022-07-13 03:08:42,525 INFO L287 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2022-07-13 03:08:42,525 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 990 states and 1575 transitions. [2022-07-13 03:08:42,529 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 145 [2022-07-13 03:08:42,530 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:42,530 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:42,531 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:42,531 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 8, 5, 5, 5, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:42,531 INFO L752 eck$LassoCheckResult]: Stem: 12051#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 12020#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 12021#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 12050#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 12071#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 12586#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12186#L43 [2022-07-13 03:08:42,531 INFO L754 eck$LassoCheckResult]: Loop: 12186#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 12090#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 12175#factENTRY ~n := #in~n; 12184#L25 assume !(~n <= 0); 12108#L26 call #t~ret0 := fact(~n - 1);< 12128#factENTRY ~n := #in~n; 12145#L25 assume !(~n <= 0); 12103#L26 call #t~ret0 := fact(~n - 1);< 12128#factENTRY ~n := #in~n; 12145#L25 assume ~n <= 0;#res := 1; 12143#factFINAL assume true; 12132#factEXIT >#66#return; 12131#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12129#factFINAL assume true; 12125#factEXIT >#66#return; 12120#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12189#factFINAL assume true; 12187#factEXIT >#68#return; 12164#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 12175#factENTRY ~n := #in~n; 12184#L25 assume !(~n <= 0); 12108#L26 call #t~ret0 := fact(~n - 1);< 12128#factENTRY ~n := #in~n; 12145#L25 assume !(~n <= 0); 12103#L26 call #t~ret0 := fact(~n - 1);< 12128#factENTRY ~n := #in~n; 12145#L25 assume ~n <= 0;#res := 1; 12143#factFINAL assume true; 12132#factEXIT >#66#return; 12131#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12129#factFINAL assume true; 12125#factEXIT >#66#return; 12120#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12189#factFINAL assume true; 12187#factEXIT >#70#return; 12161#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 12175#factENTRY ~n := #in~n; 12184#L25 assume !(~n <= 0); 12108#L26 call #t~ret0 := fact(~n - 1);< 12128#factENTRY ~n := #in~n; 12145#L25 assume ~n <= 0;#res := 1; 12143#factFINAL assume true; 12132#factEXIT >#66#return; 12140#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12181#factFINAL assume true; 12179#factEXIT >#72#return; 12180#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 12198#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 12194#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 12039#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12186#L43 [2022-07-13 03:08:42,533 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:42,534 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 4 times [2022-07-13 03:08:42,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:42,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [503526260] [2022-07-13 03:08:42,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:42,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:42,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:42,541 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:42,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:42,547 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:42,548 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:42,548 INFO L85 PathProgramCache]: Analyzing trace with hash 1163357816, now seen corresponding path program 1 times [2022-07-13 03:08:42,548 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:42,548 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1850200612] [2022-07-13 03:08:42,548 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:42,548 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:42,561 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:42,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1299242756] [2022-07-13 03:08:42,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:42,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:42,561 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:42,567 INFO L229 MonitoredProcess]: Starting monitored process 44 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:08:42,592 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-07-13 03:08:42,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:42,605 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 15 conjunts are in the unsatisfiable core [2022-07-13 03:08:42,606 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:42,683 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 12 proven. 78 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2022-07-13 03:08:42,683 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:43,029 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 12 proven. 84 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-07-13 03:08:43,030 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:43,030 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1850200612] [2022-07-13 03:08:43,030 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:43,030 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1299242756] [2022-07-13 03:08:43,030 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1299242756] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:43,030 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:43,030 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 14] total 17 [2022-07-13 03:08:43,030 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [994520643] [2022-07-13 03:08:43,030 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:43,031 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:43,031 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:43,031 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-07-13 03:08:43,031 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-07-13 03:08:43,031 INFO L87 Difference]: Start difference. First operand 990 states and 1575 transitions. cyclomatic complexity: 596 Second operand has 17 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 10 states have call successors, (10), 1 states have call predecessors, (10), 6 states have return successors, (12), 8 states have call predecessors, (12), 10 states have call successors, (12) [2022-07-13 03:08:43,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:43,389 INFO L93 Difference]: Finished difference Result 1570 states and 2543 transitions. [2022-07-13 03:08:43,390 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-07-13 03:08:43,390 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1570 states and 2543 transitions. [2022-07-13 03:08:43,403 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 309 [2022-07-13 03:08:43,417 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1570 states to 1555 states and 2523 transitions. [2022-07-13 03:08:43,417 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 516 [2022-07-13 03:08:43,418 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 516 [2022-07-13 03:08:43,418 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1555 states and 2523 transitions. [2022-07-13 03:08:43,418 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:43,418 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1555 states and 2523 transitions. [2022-07-13 03:08:43,419 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1555 states and 2523 transitions. [2022-07-13 03:08:43,448 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1555 to 1058. [2022-07-13 03:08:43,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 662 states have (on average 1.107250755287009) internal successors, (733), 628 states have internal predecessors, (733), 288 states have call successors, (288), 113 states have call predecessors, (288), 108 states have return successors, (779), 316 states have call predecessors, (779), 288 states have call successors, (779) [2022-07-13 03:08:43,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1800 transitions. [2022-07-13 03:08:43,455 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1058 states and 1800 transitions. [2022-07-13 03:08:43,455 INFO L374 stractBuchiCegarLoop]: Abstraction has 1058 states and 1800 transitions. [2022-07-13 03:08:43,456 INFO L287 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2022-07-13 03:08:43,456 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1058 states and 1800 transitions. [2022-07-13 03:08:43,461 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 151 [2022-07-13 03:08:43,461 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:43,461 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:43,462 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:43,462 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:43,462 INFO L752 eck$LassoCheckResult]: Stem: 14957#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 14928#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 14929#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 14956#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 14977#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 15501#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 15098#L43 [2022-07-13 03:08:43,463 INFO L754 eck$LassoCheckResult]: Loop: 15098#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 15000#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 15089#factENTRY ~n := #in~n; 15103#L25 assume !(~n <= 0); 15013#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume ~n <= 0;#res := 1; 15058#factFINAL assume true; 15036#factEXIT >#66#return; 15042#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15047#factFINAL assume true; 15048#factEXIT >#66#return; 15025#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15034#factFINAL assume true; 15005#factEXIT >#66#return; 15023#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15106#factFINAL assume true; 15093#factEXIT >#68#return; 15075#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 15089#factENTRY ~n := #in~n; 15103#L25 assume !(~n <= 0); 15013#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume ~n <= 0;#res := 1; 15058#factFINAL assume true; 15036#factEXIT >#66#return; 15042#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15047#factFINAL assume true; 15048#factEXIT >#66#return; 15025#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15034#factFINAL assume true; 15005#factEXIT >#66#return; 15023#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15106#factFINAL assume true; 15093#factEXIT >#70#return; 15079#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 15089#factENTRY ~n := #in~n; 15103#L25 assume !(~n <= 0); 15013#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume !(~n <= 0); 15011#L26 call #t~ret0 := fact(~n - 1);< 15057#factENTRY ~n := #in~n; 15060#L25 assume ~n <= 0;#res := 1; 15058#factFINAL assume true; 15036#factEXIT >#66#return; 15042#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15047#factFINAL assume true; 15048#factEXIT >#66#return; 15025#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15034#factFINAL assume true; 15005#factEXIT >#66#return; 15023#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 15106#factFINAL assume true; 15093#factEXIT >#72#return; 15094#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 15109#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 15107#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 14944#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 15098#L43 [2022-07-13 03:08:43,463 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:43,463 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 5 times [2022-07-13 03:08:43,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:43,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [506011359] [2022-07-13 03:08:43,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:43,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:43,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:43,466 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:43,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:43,468 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:43,469 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:43,469 INFO L85 PathProgramCache]: Analyzing trace with hash 1552918264, now seen corresponding path program 2 times [2022-07-13 03:08:43,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:43,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1330634933] [2022-07-13 03:08:43,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:43,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:43,474 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:43,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1158659511] [2022-07-13 03:08:43,474 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:08:43,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:43,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:43,479 INFO L229 MonitoredProcess]: Starting monitored process 45 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:08:43,504 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-07-13 03:08:43,527 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:08:43,528 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:08:43,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 19 conjunts are in the unsatisfiable core [2022-07-13 03:08:43,531 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:43,637 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 26 proven. 204 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2022-07-13 03:08:43,637 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:44,262 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 26 proven. 219 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-07-13 03:08:44,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:44,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1330634933] [2022-07-13 03:08:44,262 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:44,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1158659511] [2022-07-13 03:08:44,263 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1158659511] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:44,263 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:44,263 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 18] total 21 [2022-07-13 03:08:44,263 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [180407529] [2022-07-13 03:08:44,263 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:44,264 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:44,264 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:44,264 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-07-13 03:08:44,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-07-13 03:08:44,265 INFO L87 Difference]: Start difference. First operand 1058 states and 1800 transitions. cyclomatic complexity: 753 Second operand has 21 states, 18 states have (on average 2.388888888888889) internal successors, (43), 18 states have internal predecessors, (43), 12 states have call successors, (13), 1 states have call predecessors, (13), 8 states have return successors, (17), 11 states have call predecessors, (17), 12 states have call successors, (17) [2022-07-13 03:08:44,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:44,718 INFO L93 Difference]: Finished difference Result 1803 states and 3209 transitions. [2022-07-13 03:08:44,718 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-07-13 03:08:44,719 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1803 states and 3209 transitions. [2022-07-13 03:08:44,735 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 339 [2022-07-13 03:08:44,751 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1803 states to 1767 states and 3161 transitions. [2022-07-13 03:08:44,752 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 581 [2022-07-13 03:08:44,752 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 581 [2022-07-13 03:08:44,752 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1767 states and 3161 transitions. [2022-07-13 03:08:44,755 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:44,755 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1767 states and 3161 transitions. [2022-07-13 03:08:44,756 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1767 states and 3161 transitions. [2022-07-13 03:08:44,793 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1767 to 1166. [2022-07-13 03:08:44,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1166 states, 718 states have (on average 1.0988857938718664) internal successors, (789), 684 states have internal predecessors, (789), 312 states have call successors, (312), 113 states have call predecessors, (312), 136 states have return successors, (1083), 368 states have call predecessors, (1083), 312 states have call successors, (1083) [2022-07-13 03:08:44,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1166 states to 1166 states and 2184 transitions. [2022-07-13 03:08:44,801 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1166 states and 2184 transitions. [2022-07-13 03:08:44,801 INFO L374 stractBuchiCegarLoop]: Abstraction has 1166 states and 2184 transitions. [2022-07-13 03:08:44,801 INFO L287 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2022-07-13 03:08:44,802 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1166 states and 2184 transitions. [2022-07-13 03:08:44,816 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 159 [2022-07-13 03:08:44,816 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:44,816 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:44,817 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:44,817 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [11, 11, 8, 8, 8, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:44,817 INFO L752 eck$LassoCheckResult]: Stem: 18281#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 18253#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 18254#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 18280#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 18304#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 18901#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 18441#L43 [2022-07-13 03:08:44,817 INFO L754 eck$LassoCheckResult]: Loop: 18441#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 18325#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18430#factENTRY ~n := #in~n; 18440#L25 assume !(~n <= 0); 18346#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume !(~n <= 0); 18343#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume !(~n <= 0); 18343#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume ~n <= 0;#res := 1; 18394#factFINAL assume true; 18384#factEXIT >#66#return; 18383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18381#factFINAL assume true; 18371#factEXIT >#66#return; 18370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18368#factFINAL assume true; 18360#factEXIT >#66#return; 18367#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18447#factFINAL assume true; 18448#factEXIT >#68#return; 18416#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 18430#factENTRY ~n := #in~n; 18440#L25 assume !(~n <= 0); 18346#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume !(~n <= 0); 18343#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume ~n <= 0;#res := 1; 18394#factFINAL assume true; 18384#factEXIT >#66#return; 18383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18381#factFINAL assume true; 18371#factEXIT >#66#return; 18378#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18444#factFINAL assume true; 18443#factEXIT >#70#return; 18415#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 18430#factENTRY ~n := #in~n; 18440#L25 assume !(~n <= 0); 18346#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume !(~n <= 0); 18343#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume !(~n <= 0); 18343#L26 call #t~ret0 := fact(~n - 1);< 18380#factENTRY ~n := #in~n; 18397#L25 assume ~n <= 0;#res := 1; 18394#factFINAL assume true; 18384#factEXIT >#66#return; 18383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18381#factFINAL assume true; 18371#factEXIT >#66#return; 18370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18368#factFINAL assume true; 18360#factEXIT >#66#return; 18367#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18447#factFINAL assume true; 18448#factEXIT >#72#return; 18435#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 18452#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 18450#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 18271#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 18441#L43 [2022-07-13 03:08:44,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:44,818 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 6 times [2022-07-13 03:08:44,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:44,818 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [350674544] [2022-07-13 03:08:44,818 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:44,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:44,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:44,821 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:44,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:44,824 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:44,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:44,824 INFO L85 PathProgramCache]: Analyzing trace with hash -1931190080, now seen corresponding path program 3 times [2022-07-13 03:08:44,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:44,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1464816850] [2022-07-13 03:08:44,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:44,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:44,829 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:44,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1094066742] [2022-07-13 03:08:44,829 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:08:44,829 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:44,829 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:44,832 INFO L229 MonitoredProcess]: Starting monitored process 46 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:08:44,862 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2022-07-13 03:08:44,894 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2022-07-13 03:08:44,894 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:08:44,895 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:08:44,896 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:45,014 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 40 proven. 149 refuted. 0 times theorem prover too weak. 87 trivial. 0 not checked. [2022-07-13 03:08:45,015 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:45,688 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 40 proven. 168 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-07-13 03:08:45,689 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:45,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1464816850] [2022-07-13 03:08:45,689 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:45,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1094066742] [2022-07-13 03:08:45,689 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1094066742] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:45,689 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:45,689 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 18] total 23 [2022-07-13 03:08:45,689 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1104183306] [2022-07-13 03:08:45,690 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:45,690 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:08:45,690 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:08:45,690 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-07-13 03:08:45,691 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=422, Unknown=0, NotChecked=0, Total=506 [2022-07-13 03:08:45,691 INFO L87 Difference]: Start difference. First operand 1166 states and 2184 transitions. cyclomatic complexity: 1029 Second operand has 23 states, 19 states have (on average 2.263157894736842) internal successors, (43), 19 states have internal predecessors, (43), 13 states have call successors, (13), 1 states have call predecessors, (13), 9 states have return successors, (17), 12 states have call predecessors, (17), 13 states have call successors, (17) [2022-07-13 03:08:46,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:08:46,531 INFO L93 Difference]: Finished difference Result 2853 states and 5104 transitions. [2022-07-13 03:08:46,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-07-13 03:08:46,533 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2853 states and 5104 transitions. [2022-07-13 03:08:46,556 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 589 [2022-07-13 03:08:46,582 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2853 states to 2853 states and 5104 transitions. [2022-07-13 03:08:46,583 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 908 [2022-07-13 03:08:46,584 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 908 [2022-07-13 03:08:46,584 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2853 states and 5104 transitions. [2022-07-13 03:08:46,585 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:08:46,585 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2853 states and 5104 transitions. [2022-07-13 03:08:46,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2853 states and 5104 transitions. [2022-07-13 03:08:46,646 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2853 to 1454. [2022-07-13 03:08:46,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1454 states, 854 states have (on average 1.1018735362997658) internal successors, (941), 820 states have internal predecessors, (941), 436 states have call successors, (436), 153 states have call predecessors, (436), 164 states have return successors, (1643), 480 states have call predecessors, (1643), 436 states have call successors, (1643) [2022-07-13 03:08:46,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1454 states to 1454 states and 3020 transitions. [2022-07-13 03:08:46,690 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1454 states and 3020 transitions. [2022-07-13 03:08:46,690 INFO L374 stractBuchiCegarLoop]: Abstraction has 1454 states and 3020 transitions. [2022-07-13 03:08:46,690 INFO L287 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2022-07-13 03:08:46,691 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1454 states and 3020 transitions. [2022-07-13 03:08:46,699 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 187 [2022-07-13 03:08:46,699 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:08:46,699 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:08:46,700 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-13 03:08:46,700 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [9, 9, 6, 6, 6, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:08:46,700 INFO L752 eck$LassoCheckResult]: Stem: 22780#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 22748#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 22749#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 22779#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 22802#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 23686#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 22982#L43 [2022-07-13 03:08:46,700 INFO L754 eck$LassoCheckResult]: Loop: 22982#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 22827#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 22970#factENTRY ~n := #in~n; 22981#L25 assume !(~n <= 0); 22847#L26 call #t~ret0 := fact(~n - 1);< 22888#factENTRY ~n := #in~n; 22891#L25 assume !(~n <= 0); 22838#L26 call #t~ret0 := fact(~n - 1);< 22888#factENTRY ~n := #in~n; 22891#L25 assume !(~n <= 0); 22838#L26 call #t~ret0 := fact(~n - 1);< 22888#factENTRY ~n := #in~n; 22891#L25 assume ~n <= 0;#res := 1; 22867#factFINAL assume true; 22875#factEXIT >#66#return; 22877#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22878#factFINAL assume true; 22832#factEXIT >#66#return; 22861#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22939#factFINAL assume true; 22920#factEXIT >#66#return; 22925#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22993#factFINAL assume true; 22989#factEXIT >#68#return; 22960#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 22970#factENTRY ~n := #in~n; 22981#L25 assume !(~n <= 0); 22847#L26 call #t~ret0 := fact(~n - 1);< 22888#factENTRY ~n := #in~n; 22891#L25 assume !(~n <= 0); 22838#L26 call #t~ret0 := fact(~n - 1);< 22888#factENTRY ~n := #in~n; 22891#L25 assume ~n <= 0;#res := 1; 22867#factFINAL assume true; 22875#factEXIT >#66#return; 22877#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22878#factFINAL assume true; 22832#factEXIT >#66#return; 22865#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22988#factFINAL assume true; 22983#factEXIT >#70#return; 22961#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 22971#factENTRY ~n := #in~n; 22991#L25 assume !(~n <= 0); 22868#L26 call #t~ret0 := fact(~n - 1);< 22759#factENTRY ~n := #in~n; 22876#L25 assume ~n <= 0;#res := 1; 22867#factFINAL assume true; 22875#factEXIT >#66#return; 22881#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 22976#factFINAL assume true; 22974#factEXIT >#72#return; 22975#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 23005#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 23003#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 22767#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 22982#L43 [2022-07-13 03:08:46,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:46,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 7 times [2022-07-13 03:08:46,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:46,701 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1198683619] [2022-07-13 03:08:46,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:46,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:46,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:46,704 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:46,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:46,710 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:46,710 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:46,710 INFO L85 PathProgramCache]: Analyzing trace with hash -778630784, now seen corresponding path program 4 times [2022-07-13 03:08:46,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:46,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [24438998] [2022-07-13 03:08:46,711 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:46,711 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:46,717 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:46,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [387578540] [2022-07-13 03:08:46,717 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:08:46,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:46,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:46,720 INFO L229 MonitoredProcess]: Starting monitored process 47 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:08:46,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2022-07-13 03:08:46,798 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:08:46,799 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:08:46,799 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:08:46,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:08:46,836 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:08:46,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:08:46,836 INFO L85 PathProgramCache]: Analyzing trace with hash -448070673, now seen corresponding path program 1 times [2022-07-13 03:08:46,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:08:46,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2104790799] [2022-07-13 03:08:46,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:46,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:08:46,842 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:08:46,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1739305505] [2022-07-13 03:08:46,842 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:08:46,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:08:46,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:08:46,848 INFO L229 MonitoredProcess]: Starting monitored process 48 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:08:46,849 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2022-07-13 03:08:46,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:08:46,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:08:46,899 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:08:46,922 INFO L134 CoverageAnalysis]: Checked inductivity of 175 backedges. 107 proven. 5 refuted. 0 times theorem prover too weak. 63 trivial. 0 not checked. [2022-07-13 03:08:46,922 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:08:46,997 INFO L134 CoverageAnalysis]: Checked inductivity of 175 backedges. 9 proven. 26 refuted. 0 times theorem prover too weak. 140 trivial. 0 not checked. [2022-07-13 03:08:46,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:08:46,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2104790799] [2022-07-13 03:08:46,998 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:08:46,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1739305505] [2022-07-13 03:08:46,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1739305505] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:08:46,998 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:08:46,999 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-07-13 03:08:46,999 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1422028573] [2022-07-13 03:08:46,999 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:08:59,710 WARN L233 SmtUtils]: Spent 12.22s on a formula simplification. DAG size of input: 72 DAG size of output: 70 (called from [L 279] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2022-07-13 03:09:00,081 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:09:00,081 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:09:00,081 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:09:00,081 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:09:00,082 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:09:00,082 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:09:00,082 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:09:00,082 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:09:00,082 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2022-07-13 03:09:00,082 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:09:00,082 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:09:00,083 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:09:33,013 WARN L233 SmtUtils]: Spent 32.92s on a formula simplification that was a NOOP. DAG size: 64 (called from [L 442] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.mapelimination.MapEliminator.setFormulaAndSimplify) [2022-07-13 03:09:33,013 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:09:33,014 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:09:33,016 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:09:33,017 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:09:33,018 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:09:33,870 WARN L137 XnfTransformerHelper]: expecting exponential blowup for input size 9 [2022-07-13 03:09:34,297 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:09:34,297 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:09:34,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:09:34,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:09:34,307 INFO L229 MonitoredProcess]: Starting monitored process 49 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:09:34,312 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:09:34,312 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:09:34,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2022-07-13 03:09:34,340 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2022-07-13 03:09:34,343 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:09:34,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:09:34,345 INFO L229 MonitoredProcess]: Starting monitored process 50 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:09:34,345 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2022-07-13 03:09:34,347 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:09:34,347 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:09:34,369 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:09:34,384 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Forceful destruction successful, exit code 0 [2022-07-13 03:09:34,384 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:09:34,384 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:09:34,384 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:09:34,384 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:09:34,384 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:09:34,384 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:09:34,384 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:09:34,384 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:09:34,384 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2022-07-13 03:09:34,385 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:09:34,385 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:09:34,386 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:09:34,387 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:09:34,388 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:09:34,390 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:09:34,391 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:11:02,393 WARN L233 SmtUtils]: Spent 1.47m on a formula simplification that was a NOOP. DAG size: 64 (called from [L 442] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.mapelimination.MapEliminator.setFormulaAndSimplify) [2022-07-13 03:11:02,393 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:11:03,304 WARN L137 XnfTransformerHelper]: expecting exponential blowup for input size 9 [2022-07-13 03:11:03,691 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:03,691 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:03,691 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,691 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,693 INFO L229 MonitoredProcess]: Starting monitored process 51 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:11:03,694 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2022-07-13 03:11:03,698 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:11:03,704 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:03,704 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:03,704 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:03,704 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:03,704 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:03,704 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:03,704 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:03,705 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:03,719 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Ended with exit code 0 [2022-07-13 03:11:03,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,720 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,721 INFO L229 MonitoredProcess]: Starting monitored process 52 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:11:03,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2022-07-13 03:11:03,723 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:11:03,729 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:03,729 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:03,729 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:03,729 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:03,729 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:03,729 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:03,729 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:03,730 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:03,746 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2022-07-13 03:11:03,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,748 INFO L229 MonitoredProcess]: Starting monitored process 53 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:11:03,749 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2022-07-13 03:11:03,751 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:11:03,757 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:03,757 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:03,758 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:03,758 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:03,758 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:03,758 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:03,758 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:03,759 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:03,774 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Ended with exit code 0 [2022-07-13 03:11:03,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,774 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,775 INFO L229 MonitoredProcess]: Starting monitored process 54 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:11:03,776 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2022-07-13 03:11:03,777 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:11:03,783 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:03,783 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:03,783 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:03,783 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:03,783 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:03,784 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:03,784 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:03,790 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:03,805 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:03,805 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,805 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,806 INFO L229 MonitoredProcess]: Starting monitored process 55 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:11:03,810 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2022-07-13 03:11:03,811 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:11:03,817 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:03,817 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:03,817 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:03,817 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2022-07-13 03:11:03,817 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:03,823 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2022-07-13 03:11:03,823 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:03,833 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:03,838 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:11:03,838 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-13 03:11:03,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:03,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:03,844 INFO L229 MonitoredProcess]: Starting monitored process 56 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:11:03,845 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2022-07-13 03:11:03,846 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:03,846 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:03,846 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:03,846 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1, ULTIMATE.start_main_~x~0#1) = -1*ULTIMATE.start_main_~k~0#1 + 1*ULTIMATE.start_main_~x~0#1 Supporting invariants [] [2022-07-13 03:11:03,868 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:03,869 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:03,878 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:03,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:03,882 INFO L263 TraceCheckSpWp]: Trace formula consists of 16 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-13 03:11:03,882 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:03,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:03,933 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 22 conjunts are in the unsatisfiable core [2022-07-13 03:11:03,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:04,043 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2022-07-13 03:11:04,043 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2022-07-13 03:11:04,044 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1454 states and 3020 transitions. cyclomatic complexity: 1577 Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:04,172 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1454 states and 3020 transitions. cyclomatic complexity: 1577. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 4311 states and 8979 transitions. Complement of second has 11 states. [2022-07-13 03:11:04,179 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:04,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:04,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 35 transitions. [2022-07-13 03:11:04,181 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 35 transitions. Stem has 6 letters. Loop has 56 letters. [2022-07-13 03:11:04,181 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:04,181 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 35 transitions. Stem has 62 letters. Loop has 56 letters. [2022-07-13 03:11:04,181 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:04,181 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 35 transitions. Stem has 6 letters. Loop has 112 letters. [2022-07-13 03:11:04,182 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:04,182 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4311 states and 8979 transitions. [2022-07-13 03:11:04,229 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:04,246 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:04,293 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4311 states to 3661 states and 7328 transitions. [2022-07-13 03:11:04,293 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 798 [2022-07-13 03:11:04,294 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 810 [2022-07-13 03:11:04,294 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3661 states and 7328 transitions. [2022-07-13 03:11:04,294 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:04,294 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3661 states and 7328 transitions. [2022-07-13 03:11:04,296 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3661 states and 7328 transitions. [2022-07-13 03:11:04,435 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3661 to 3476. [2022-07-13 03:11:04,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3476 states, 2026 states have (on average 1.0992102665350445) internal successors, (2227), 1953 states have internal predecessors, (2227), 1027 states have call successors, (1027), 382 states have call predecessors, (1027), 423 states have return successors, (3794), 1140 states have call predecessors, (3794), 1018 states have call successors, (3794) [2022-07-13 03:11:04,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3476 states to 3476 states and 7048 transitions. [2022-07-13 03:11:04,464 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3476 states and 7048 transitions. [2022-07-13 03:11:04,464 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:04,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-13 03:11:04,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-07-13 03:11:04,465 INFO L87 Difference]: Start difference. First operand 3476 states and 7048 transitions. Second operand has 7 states, 6 states have (on average 4.5) internal successors, (27), 7 states have internal predecessors, (27), 4 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-07-13 03:11:04,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:04,634 INFO L93 Difference]: Finished difference Result 2355 states and 4386 transitions. [2022-07-13 03:11:04,635 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-13 03:11:04,636 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2355 states and 4386 transitions. [2022-07-13 03:11:04,657 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:04,682 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2355 states to 2244 states and 4268 transitions. [2022-07-13 03:11:04,682 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 569 [2022-07-13 03:11:04,682 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 569 [2022-07-13 03:11:04,683 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2244 states and 4268 transitions. [2022-07-13 03:11:04,683 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:04,683 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2244 states and 4268 transitions. [2022-07-13 03:11:04,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2244 states and 4268 transitions. [2022-07-13 03:11:04,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2244 to 2180. [2022-07-13 03:11:04,814 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2180 states, 1305 states have (on average 1.1026819923371647) internal successors, (1439), 1264 states have internal predecessors, (1439), 602 states have call successors, (602), 245 states have call predecessors, (602), 273 states have return successors, (2151), 670 states have call predecessors, (2151), 596 states have call successors, (2151) [2022-07-13 03:11:04,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2180 states to 2180 states and 4192 transitions. [2022-07-13 03:11:04,827 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2180 states and 4192 transitions. [2022-07-13 03:11:04,828 INFO L374 stractBuchiCegarLoop]: Abstraction has 2180 states and 4192 transitions. [2022-07-13 03:11:04,828 INFO L287 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2022-07-13 03:11:04,828 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2180 states and 4192 transitions. [2022-07-13 03:11:04,838 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:04,838 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:04,838 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:04,838 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:04,838 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:11:04,838 INFO L752 eck$LassoCheckResult]: Stem: 34933#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 34902#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 34903#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 34932#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 34916#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 34917#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35221#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 34892#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 34893#factENTRY ~n := #in~n; 35493#L25 assume !(~n <= 0); 34865#L26 call #t~ret0 := fact(~n - 1);< 35561#factENTRY [2022-07-13 03:11:04,838 INFO L754 eck$LassoCheckResult]: Loop: 35561#factENTRY ~n := #in~n; 35609#L25 assume !(~n <= 0); 34866#L26 call #t~ret0 := fact(~n - 1);< 35561#factENTRY [2022-07-13 03:11:04,839 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:04,839 INFO L85 PathProgramCache]: Analyzing trace with hash 271623377, now seen corresponding path program 1 times [2022-07-13 03:11:04,839 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:04,839 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2100261140] [2022-07-13 03:11:04,839 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:04,840 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:04,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:04,871 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:11:04,871 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:04,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2100261140] [2022-07-13 03:11:04,872 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2100261140] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:11:04,872 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:11:04,872 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-07-13 03:11:04,872 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1469435737] [2022-07-13 03:11:04,872 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:11:04,872 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:04,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:04,873 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 1 times [2022-07-13 03:11:04,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:04,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1843990786] [2022-07-13 03:11:04,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:04,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:04,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:04,875 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:04,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:04,877 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:04,974 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:04,974 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:04,974 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:04,974 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:04,974 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:11:04,974 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:04,974 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:04,974 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:04,974 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2022-07-13 03:11:04,975 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:04,975 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:04,975 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:11:04,977 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:11:04,978 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:11:04,980 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:11:05,017 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:05,018 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:11:05,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,020 INFO L229 MonitoredProcess]: Starting monitored process 57 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:11:05,028 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:05,028 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:05,036 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2022-07-13 03:11:05,045 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:05,045 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:05,068 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,069 INFO L229 MonitoredProcess]: Starting monitored process 58 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:11:05,075 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:05,076 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:05,095 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2022-07-13 03:11:05,096 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:05,097 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#res=0} Honda state: {fact_#res=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:05,118 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,120 INFO L229 MonitoredProcess]: Starting monitored process 59 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:11:05,123 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:05,123 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:05,132 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2022-07-13 03:11:05,143 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:05,143 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#t~ret0=0} Honda state: {fact_#t~ret0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:05,164 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,166 INFO L229 MonitoredProcess]: Starting monitored process 60 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:11:05,167 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2022-07-13 03:11:05,168 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:05,168 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:05,216 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,218 INFO L229 MonitoredProcess]: Starting monitored process 61 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:11:05,223 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:11:05,223 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:05,247 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2022-07-13 03:11:05,271 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:11:05,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,279 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:05,279 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:05,279 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:05,279 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:05,279 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:11:05,279 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,279 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:05,279 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:05,279 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2022-07-13 03:11:05,279 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:05,279 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:05,280 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:11:05,283 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:11:05,285 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:11:05,290 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:11:05,306 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:05,307 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:05,307 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,307 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,308 INFO L229 MonitoredProcess]: Starting monitored process 62 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:11:05,311 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2022-07-13 03:11:05,312 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:11:05,319 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:05,319 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:05,319 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:05,319 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:05,319 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:05,320 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:05,320 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:05,333 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:05,359 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,359 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,359 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,361 INFO L229 MonitoredProcess]: Starting monitored process 63 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:11:05,363 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:11:05,371 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:05,371 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:05,371 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:05,371 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:05,371 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:05,372 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:05,372 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:05,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2022-07-13 03:11:05,383 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:05,410 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,410 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,412 INFO L229 MonitoredProcess]: Starting monitored process 64 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:11:05,415 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:11:05,423 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:05,423 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:05,423 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:05,423 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:05,423 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:05,424 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:05,424 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:05,423 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2022-07-13 03:11:05,438 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:05,440 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:11:05,440 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-13 03:11:05,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:05,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:05,444 INFO L229 MonitoredProcess]: Starting monitored process 65 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:11:05,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2022-07-13 03:11:05,446 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:05,446 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:05,446 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:05,446 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2022-07-13 03:11:05,471 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,471 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:05,483 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:05,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:05,499 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:11:05,500 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:05,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:05,521 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:05,521 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:05,543 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:11:05,543 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2022-07-13 03:11:05,544 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2180 states and 4192 transitions. cyclomatic complexity: 2034 Second operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-13 03:11:05,633 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2180 states and 4192 transitions. cyclomatic complexity: 2034. Second operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 2427 states and 4645 transitions. Complement of second has 13 states. [2022-07-13 03:11:05,634 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:05,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-13 03:11:05,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2022-07-13 03:11:05,635 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 32 transitions. Stem has 11 letters. Loop has 3 letters. [2022-07-13 03:11:05,636 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:05,636 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 32 transitions. Stem has 14 letters. Loop has 3 letters. [2022-07-13 03:11:05,636 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:05,636 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 32 transitions. Stem has 11 letters. Loop has 6 letters. [2022-07-13 03:11:05,636 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:05,636 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2427 states and 4645 transitions. [2022-07-13 03:11:05,671 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:05,682 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:05,719 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2427 states to 2355 states and 4554 transitions. [2022-07-13 03:11:05,719 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 572 [2022-07-13 03:11:05,720 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 574 [2022-07-13 03:11:05,720 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2355 states and 4554 transitions. [2022-07-13 03:11:05,720 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:05,720 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2355 states and 4554 transitions. [2022-07-13 03:11:05,721 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2355 states and 4554 transitions. [2022-07-13 03:11:05,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2355 to 2342. [2022-07-13 03:11:05,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2342 states, 1406 states have (on average 1.112375533428165) internal successors, (1564), 1379 states have internal predecessors, (1564), 644 states have call successors, (644), 277 states have call predecessors, (644), 292 states have return successors, (2308), 685 states have call predecessors, (2308), 638 states have call successors, (2308) [2022-07-13 03:11:05,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2342 states to 2342 states and 4516 transitions. [2022-07-13 03:11:05,847 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2342 states and 4516 transitions. [2022-07-13 03:11:05,847 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:05,847 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-07-13 03:11:05,848 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-07-13 03:11:05,848 INFO L87 Difference]: Start difference. First operand 2342 states and 4516 transitions. Second operand has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-13 03:11:05,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:05,978 INFO L93 Difference]: Finished difference Result 2396 states and 4573 transitions. [2022-07-13 03:11:05,980 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-13 03:11:05,980 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2396 states and 4573 transitions. [2022-07-13 03:11:06,002 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:06,029 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2396 states to 2396 states and 4573 transitions. [2022-07-13 03:11:06,030 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 578 [2022-07-13 03:11:06,031 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 578 [2022-07-13 03:11:06,031 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2396 states and 4573 transitions. [2022-07-13 03:11:06,031 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:06,031 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2396 states and 4573 transitions. [2022-07-13 03:11:06,032 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2396 states and 4573 transitions. [2022-07-13 03:11:06,123 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2396 to 2363. [2022-07-13 03:11:06,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2363 states, 1424 states have (on average 1.1109550561797752) internal successors, (1582), 1394 states have internal predecessors, (1582), 641 states have call successors, (641), 283 states have call predecessors, (641), 298 states have return successors, (2305), 685 states have call predecessors, (2305), 635 states have call successors, (2305) [2022-07-13 03:11:06,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2363 states to 2363 states and 4528 transitions. [2022-07-13 03:11:06,140 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2363 states and 4528 transitions. [2022-07-13 03:11:06,140 INFO L374 stractBuchiCegarLoop]: Abstraction has 2363 states and 4528 transitions. [2022-07-13 03:11:06,140 INFO L287 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2022-07-13 03:11:06,141 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2363 states and 4528 transitions. [2022-07-13 03:11:06,151 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 190 [2022-07-13 03:11:06,152 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:06,152 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:06,152 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:06,152 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-13 03:11:06,152 INFO L752 eck$LassoCheckResult]: Stem: 44372#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 44345#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 44346#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 44371#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 44357#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 44358#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 44373#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 44374#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 44865#factENTRY ~n := #in~n; 44900#L25 assume ~n <= 0;#res := 1; 44873#factFINAL assume true; 44864#factEXIT >#68#return; 44720#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 44862#factENTRY ~n := #in~n; 44863#L25 assume !(~n <= 0); 44726#L26 call #t~ret0 := fact(~n - 1);< 44729#factENTRY ~n := #in~n; 44732#L25 assume ~n <= 0;#res := 1; 44730#factFINAL assume true; 44722#factEXIT >#66#return; 44718#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 44721#factFINAL assume true; 44957#factEXIT >#70#return; 44713#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 44715#factENTRY ~n := #in~n; 44782#L25 assume ~n <= 0;#res := 1; 44712#factFINAL assume true; 44714#factEXIT >#72#return; 44961#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 45057#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 45044#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 45042#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 44969#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 44330#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 44605#factENTRY ~n := #in~n; 45116#L25 assume !(~n <= 0); 44296#L26 call #t~ret0 := fact(~n - 1);< 45104#factENTRY [2022-07-13 03:11:06,153 INFO L754 eck$LassoCheckResult]: Loop: 45104#factENTRY ~n := #in~n; 45108#L25 assume !(~n <= 0); 44291#L26 call #t~ret0 := fact(~n - 1);< 45104#factENTRY [2022-07-13 03:11:06,153 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:06,153 INFO L85 PathProgramCache]: Analyzing trace with hash 1605874444, now seen corresponding path program 1 times [2022-07-13 03:11:06,153 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:06,153 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [687618823] [2022-07-13 03:11:06,154 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:06,154 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:06,158 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:06,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1556637950] [2022-07-13 03:11:06,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:06,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:06,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,160 INFO L229 MonitoredProcess]: Starting monitored process 66 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:11:06,184 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Waiting until timeout for monitored process [2022-07-13 03:11:06,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:06,217 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-13 03:11:06,218 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:06,249 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 26 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-07-13 03:11:06,249 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:06,309 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 16 proven. 4 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-07-13 03:11:06,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:06,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [687618823] [2022-07-13 03:11:06,310 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:06,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1556637950] [2022-07-13 03:11:06,310 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1556637950] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:06,310 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:06,310 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-07-13 03:11:06,310 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [39959680] [2022-07-13 03:11:06,310 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:06,310 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:06,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:06,311 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 2 times [2022-07-13 03:11:06,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:06,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1529368138] [2022-07-13 03:11:06,311 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:06,311 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:06,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:06,313 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:06,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:06,314 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:06,339 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:06,339 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:06,339 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:06,339 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:06,339 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:11:06,339 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,339 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:06,339 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:06,339 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration14_Loop [2022-07-13 03:11:06,339 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:06,339 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:06,340 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:11:06,344 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:11:06,346 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:11:06,348 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:11:06,369 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:06,369 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:11:06,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,370 INFO L229 MonitoredProcess]: Starting monitored process 67 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:11:06,371 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2022-07-13 03:11:06,372 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:06,373 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:06,383 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:06,383 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#t~ret0=0} Honda state: {fact_#t~ret0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:06,399 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,399 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,399 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,402 INFO L229 MonitoredProcess]: Starting monitored process 68 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:11:06,402 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2022-07-13 03:11:06,403 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:06,403 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:06,410 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:06,410 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#res=0} Honda state: {fact_#res=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:06,425 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,425 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,426 INFO L229 MonitoredProcess]: Starting monitored process 69 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:11:06,428 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2022-07-13 03:11:06,428 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:06,428 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:06,435 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:06,435 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:06,452 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,453 INFO L229 MonitoredProcess]: Starting monitored process 70 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:11:06,453 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2022-07-13 03:11:06,458 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:06,458 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:06,479 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,481 INFO L229 MonitoredProcess]: Starting monitored process 71 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:11:06,481 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2022-07-13 03:11:06,483 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:11:06,483 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:06,508 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:11:06,510 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,511 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:06,511 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:06,511 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:06,511 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:06,511 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:11:06,511 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,511 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:06,511 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:06,511 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration14_Loop [2022-07-13 03:11:06,511 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:06,511 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:06,512 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:11:06,520 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:11:06,522 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:11:06,523 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:11:06,542 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:06,542 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:06,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,544 INFO L229 MonitoredProcess]: Starting monitored process 72 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:11:06,544 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2022-07-13 03:11:06,546 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:11:06,551 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:06,551 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:06,552 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:06,552 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:06,552 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:06,552 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:06,552 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:06,553 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:06,570 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,571 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,572 INFO L229 MonitoredProcess]: Starting monitored process 73 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:11:06,573 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2022-07-13 03:11:06,574 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:11:06,579 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:06,579 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:06,579 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:06,579 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:06,579 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:06,580 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:06,580 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:06,586 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:06,601 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Ended with exit code 0 [2022-07-13 03:11:06,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,602 INFO L229 MonitoredProcess]: Starting monitored process 74 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:11:06,602 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2022-07-13 03:11:06,604 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:11:06,609 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:06,609 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:06,609 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:06,609 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:06,609 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:06,615 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:06,615 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:06,636 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:06,655 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Ended with exit code 0 [2022-07-13 03:11:06,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,657 INFO L229 MonitoredProcess]: Starting monitored process 75 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:11:06,658 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2022-07-13 03:11:06,659 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:11:06,666 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:06,666 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:06,666 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:06,666 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:06,666 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:06,667 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:06,667 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:06,673 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:06,675 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:11:06,675 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-13 03:11:06,675 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:06,675 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:06,676 INFO L229 MonitoredProcess]: Starting monitored process 76 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:11:06,677 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2022-07-13 03:11:06,678 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:06,678 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:06,678 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:06,678 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2022-07-13 03:11:06,693 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,694 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:06,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:06,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:06,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:11:06,745 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:06,897 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:06,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:06,922 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:06,923 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:06,947 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:11:06,947 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-13 03:11:06,947 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,047 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 2430 states and 4623 transitions. Complement of second has 13 states. [2022-07-13 03:11:07,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:07,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 32 transitions. [2022-07-13 03:11:07,052 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-13 03:11:07,052 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:07,052 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:07,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:07,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:07,107 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:11:07,108 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:07,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:07,247 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:07,248 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:07,269 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:11:07,269 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-13 03:11:07,270 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,380 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 2430 states and 4623 transitions. Complement of second has 13 states. [2022-07-13 03:11:07,380 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:07,381 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 32 transitions. [2022-07-13 03:11:07,381 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-13 03:11:07,383 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:07,383 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:07,394 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:07,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:07,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:11:07,436 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:07,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:07,582 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:07,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:07,608 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:11:07,610 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-13 03:11:07,610 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,736 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2363 states and 4528 transitions. cyclomatic complexity: 2196. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 2672 states and 4961 transitions. Complement of second has 16 states. [2022-07-13 03:11:07,737 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:07,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-13 03:11:07,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-07-13 03:11:07,738 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-13 03:11:07,739 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:07,739 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 40 letters. Loop has 3 letters. [2022-07-13 03:11:07,739 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:07,739 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 37 letters. Loop has 6 letters. [2022-07-13 03:11:07,740 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:07,740 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2672 states and 4961 transitions. [2022-07-13 03:11:07,767 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 184 [2022-07-13 03:11:07,814 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2672 states to 2118 states and 4134 transitions. [2022-07-13 03:11:07,814 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 470 [2022-07-13 03:11:07,815 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 478 [2022-07-13 03:11:07,815 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2118 states and 4134 transitions. [2022-07-13 03:11:07,816 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:07,816 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2118 states and 4134 transitions. [2022-07-13 03:11:07,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2118 states and 4134 transitions. [2022-07-13 03:11:07,867 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2118 to 2064. [2022-07-13 03:11:07,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1242 states have (on average 1.109500805152979) internal successors, (1378), 1201 states have internal predecessors, (1378), 567 states have call successors, (567), 253 states have call predecessors, (567), 255 states have return successors, (2080), 609 states have call predecessors, (2080), 567 states have call successors, (2080) [2022-07-13 03:11:07,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 4025 transitions. [2022-07-13 03:11:07,881 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2064 states and 4025 transitions. [2022-07-13 03:11:07,881 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:07,882 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-13 03:11:07,882 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-07-13 03:11:07,882 INFO L87 Difference]: Start difference. First operand 2064 states and 4025 transitions. Second operand has 7 states, 6 states have (on average 4.166666666666667) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-07-13 03:11:08,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:08,013 INFO L93 Difference]: Finished difference Result 2206 states and 4284 transitions. [2022-07-13 03:11:08,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-13 03:11:08,014 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2206 states and 4284 transitions. [2022-07-13 03:11:08,034 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 204 [2022-07-13 03:11:08,059 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2206 states to 2206 states and 4284 transitions. [2022-07-13 03:11:08,059 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 507 [2022-07-13 03:11:08,060 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 507 [2022-07-13 03:11:08,060 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2206 states and 4284 transitions. [2022-07-13 03:11:08,060 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:08,060 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2206 states and 4284 transitions. [2022-07-13 03:11:08,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2206 states and 4284 transitions. [2022-07-13 03:11:08,134 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2206 to 2091. [2022-07-13 03:11:08,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2091 states, 1250 states have (on average 1.1088) internal successors, (1386), 1215 states have internal predecessors, (1386), 586 states have call successors, (586), 253 states have call predecessors, (586), 255 states have return successors, (2118), 622 states have call predecessors, (2118), 586 states have call successors, (2118) [2022-07-13 03:11:08,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2091 states to 2091 states and 4090 transitions. [2022-07-13 03:11:08,147 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2091 states and 4090 transitions. [2022-07-13 03:11:08,147 INFO L374 stractBuchiCegarLoop]: Abstraction has 2091 states and 4090 transitions. [2022-07-13 03:11:08,148 INFO L287 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2022-07-13 03:11:08,148 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2091 states and 4090 transitions. [2022-07-13 03:11:08,157 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 189 [2022-07-13 03:11:08,157 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:08,157 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:08,159 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:08,159 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [22, 22, 13, 13, 13, 13, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:08,160 INFO L752 eck$LassoCheckResult]: Stem: 59223#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 59192#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 59193#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 59222#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 59207#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 59208#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 59862#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 59847#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 59849#factENTRY ~n := #in~n; 59861#L25 assume ~n <= 0;#res := 1; 59860#factFINAL assume true; 59846#factEXIT >#68#return; 59839#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 59842#factENTRY ~n := #in~n; 59871#L25 assume ~n <= 0;#res := 1; 59870#factFINAL assume true; 59868#factEXIT >#70#return; 59840#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 59844#factENTRY ~n := #in~n; 59884#L25 assume ~n <= 0;#res := 1; 59870#factFINAL assume true; 59868#factEXIT >#72#return; 59869#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 59886#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 59885#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 59872#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 59851#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 59724#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 60275#factENTRY ~n := #in~n; 60360#L25 assume ~n <= 0;#res := 1; 60361#factFINAL assume true; 60372#factEXIT >#74#return; 60364#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 60365#factENTRY ~n := #in~n; 60373#L25 assume ~n <= 0;#res := 1; 60371#factFINAL assume true; 60363#factEXIT >#76#return; 60352#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 60355#factENTRY ~n := #in~n; 60354#L25 assume !(~n <= 0); 60294#L26 call #t~ret0 := fact(~n - 1);< 60315#factENTRY ~n := #in~n; 60362#L25 assume ~n <= 0;#res := 1; 60351#factFINAL assume true; 60312#factEXIT >#66#return; 60311#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 60378#factFINAL assume true; 60375#factEXIT >#78#return; 60358#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 59704#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 59705#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 59699#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 59698#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 59695#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 59429#L42-3 [2022-07-13 03:11:08,160 INFO L754 eck$LassoCheckResult]: Loop: 59429#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 59428#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 59275#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 59299#factENTRY ~n := #in~n; 59424#L25 assume !(~n <= 0); 59318#L26 call #t~ret0 := fact(~n - 1);< 59409#factENTRY ~n := #in~n; 59385#L25 assume ~n <= 0;#res := 1; 59410#factFINAL assume true; 59394#factEXIT >#66#return; 59406#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59417#factFINAL assume true; 59415#factEXIT >#68#return; 59284#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 59418#factENTRY ~n := #in~n; 59421#L25 assume ~n <= 0;#res := 1; 59298#factFINAL assume true; 59273#factEXIT >#70#return; 59295#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 59419#factENTRY ~n := #in~n; 59425#L25 assume !(~n <= 0); 59318#L26 call #t~ret0 := fact(~n - 1);< 59409#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59355#L25 assume ~n <= 0;#res := 1; 59383#factFINAL assume true; 59380#factEXIT >#66#return; 59379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59376#factFINAL assume true; 59359#factEXIT >#66#return; 59373#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59435#factFINAL assume true; 59427#factEXIT >#72#return; 59416#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 59446#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 59444#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 59440#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 59422#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 59268#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 59299#factENTRY ~n := #in~n; 59424#L25 assume !(~n <= 0); 59318#L26 call #t~ret0 := fact(~n - 1);< 59409#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59355#L25 assume ~n <= 0;#res := 1; 59383#factFINAL assume true; 59380#factEXIT >#66#return; 59379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59376#factFINAL assume true; 59359#factEXIT >#66#return; 59373#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59435#factFINAL assume true; 59427#factEXIT >#68#return; 59280#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 59299#factENTRY ~n := #in~n; 59424#L25 assume !(~n <= 0); 59318#L26 call #t~ret0 := fact(~n - 1);< 59409#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59355#L25 assume ~n <= 0;#res := 1; 59383#factFINAL assume true; 59380#factEXIT >#66#return; 59379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59376#factFINAL assume true; 59359#factEXIT >#66#return; 59373#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59435#factFINAL assume true; 59427#factEXIT >#70#return; 59279#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 59297#factENTRY ~n := #in~n; 59300#L25 assume ~n <= 0;#res := 1; 59298#factFINAL assume true; 59273#factEXIT >#72#return; 59272#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 59271#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 59270#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 59269#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 59248#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 59255#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 59264#factENTRY ~n := #in~n; 59266#L25 assume !(~n <= 0); 59267#L26 call #t~ret0 := fact(~n - 1);< 59409#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59355#L25 assume ~n <= 0;#res := 1; 59383#factFINAL assume true; 59380#factEXIT >#66#return; 59379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59376#factFINAL assume true; 59359#factEXIT >#66#return; 59358#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59356#factFINAL assume true; 59339#factEXIT >#66#return; 59345#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59357#factFINAL assume true; 59347#factEXIT >#66#return; 59337#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59333#factFINAL assume true; 59301#factEXIT >#74#return; 59253#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 59264#factENTRY ~n := #in~n; 59266#L25 assume ~n <= 0;#res := 1; 59265#factFINAL assume true; 59263#factEXIT >#76#return; 59256#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 59302#factENTRY ~n := #in~n; 59413#L25 assume !(~n <= 0); 59321#L26 call #t~ret0 := fact(~n - 1);< 59331#factENTRY ~n := #in~n; 59338#L25 assume !(~n <= 0); 59316#L26 call #t~ret0 := fact(~n - 1);< 59335#factENTRY ~n := #in~n; 59355#L25 assume ~n <= 0;#res := 1; 59383#factFINAL assume true; 59380#factEXIT >#66#return; 59379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59376#factFINAL assume true; 59359#factEXIT >#66#return; 59375#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 59390#factFINAL assume true; 59252#factEXIT >#78#return; 59251#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 59250#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 59249#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 59247#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 59218#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 59219#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 59429#L42-3 [2022-07-13 03:11:08,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:08,160 INFO L85 PathProgramCache]: Analyzing trace with hash 1078509977, now seen corresponding path program 1 times [2022-07-13 03:11:08,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:08,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1325075270] [2022-07-13 03:11:08,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:08,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:08,168 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:08,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1489593002] [2022-07-13 03:11:08,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:08,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:08,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:08,169 INFO L229 MonitoredProcess]: Starting monitored process 77 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:11:08,193 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (77)] Waiting until timeout for monitored process [2022-07-13 03:11:08,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:08,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:08,231 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:08,262 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 63 proven. 0 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-07-13 03:11:08,262 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-13 03:11:08,263 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:08,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1325075270] [2022-07-13 03:11:08,263 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:08,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1489593002] [2022-07-13 03:11:08,263 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1489593002] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-13 03:11:08,263 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-13 03:11:08,263 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-07-13 03:11:08,263 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [817988947] [2022-07-13 03:11:08,263 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-13 03:11:08,264 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:08,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:08,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1312362971, now seen corresponding path program 3 times [2022-07-13 03:11:08,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:08,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907712972] [2022-07-13 03:11:08,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:08,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:08,271 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:08,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1784692156] [2022-07-13 03:11:08,271 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:08,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:08,271 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:08,272 INFO L229 MonitoredProcess]: Starting monitored process 78 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:11:08,296 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (78)] Waiting until timeout for monitored process [2022-07-13 03:11:08,353 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-07-13 03:11:08,353 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:08,354 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-13 03:11:08,356 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:08,422 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 3 refuted. 0 times theorem prover too weak. 914 trivial. 0 not checked. [2022-07-13 03:11:08,422 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:08,625 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 4 refuted. 0 times theorem prover too weak. 913 trivial. 0 not checked. [2022-07-13 03:11:08,625 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:08,626 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [907712972] [2022-07-13 03:11:08,626 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:08,626 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1784692156] [2022-07-13 03:11:08,626 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1784692156] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:08,626 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:08,626 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2022-07-13 03:11:08,626 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [164703564] [2022-07-13 03:11:08,626 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:08,626 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:08,626 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:08,627 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-13 03:11:08,627 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-07-13 03:11:08,627 INFO L87 Difference]: Start difference. First operand 2091 states and 4090 transitions. cyclomatic complexity: 2023 Second operand has 7 states, 6 states have (on average 4.833333333333333) internal successors, (29), 7 states have internal predecessors, (29), 3 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-07-13 03:11:08,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:08,804 INFO L93 Difference]: Finished difference Result 2086 states and 4022 transitions. [2022-07-13 03:11:08,805 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-13 03:11:08,805 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2086 states and 4022 transitions. [2022-07-13 03:11:08,822 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 197 [2022-07-13 03:11:08,840 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2086 states to 2034 states and 3952 transitions. [2022-07-13 03:11:08,840 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 500 [2022-07-13 03:11:08,841 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 500 [2022-07-13 03:11:08,841 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2034 states and 3952 transitions. [2022-07-13 03:11:08,841 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:08,841 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2034 states and 3952 transitions. [2022-07-13 03:11:08,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2034 states and 3952 transitions. [2022-07-13 03:11:08,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2034 to 1838. [2022-07-13 03:11:08,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1838 states, 1104 states have (on average 1.102355072463768) internal successors, (1217), 1070 states have internal predecessors, (1217), 508 states have call successors, (508), 221 states have call predecessors, (508), 226 states have return successors, (1848), 546 states have call predecessors, (1848), 508 states have call successors, (1848) [2022-07-13 03:11:08,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1838 states to 1838 states and 3573 transitions. [2022-07-13 03:11:08,899 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1838 states and 3573 transitions. [2022-07-13 03:11:08,899 INFO L374 stractBuchiCegarLoop]: Abstraction has 1838 states and 3573 transitions. [2022-07-13 03:11:08,900 INFO L287 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2022-07-13 03:11:08,900 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1838 states and 3573 transitions. [2022-07-13 03:11:08,907 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 140 [2022-07-13 03:11:08,907 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:08,907 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:08,909 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:08,909 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [32, 32, 23, 23, 23, 23, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:08,909 INFO L752 eck$LassoCheckResult]: Stem: 64403#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 64365#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 64366#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 64402#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 64388#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 64389#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 65135#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 65132#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 65133#factENTRY ~n := #in~n; 65142#L25 assume ~n <= 0;#res := 1; 65138#factFINAL assume true; 65131#factEXIT >#68#return; 65128#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 65130#factENTRY ~n := #in~n; 65136#L25 assume ~n <= 0;#res := 1; 65134#factFINAL assume true; 65127#factEXIT >#70#return; 65129#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 65130#factENTRY ~n := #in~n; 65136#L25 assume ~n <= 0;#res := 1; 65134#factFINAL assume true; 65127#factEXIT >#72#return; 65126#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 65125#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 65100#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 65063#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64856#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 64844#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 65061#factENTRY ~n := #in~n; 65059#L25 assume !(~n <= 0); 65015#L26 call #t~ret0 := fact(~n - 1);< 65054#factENTRY ~n := #in~n; 65055#L25 assume ~n <= 0;#res := 1; 65140#factFINAL assume true; 65121#factEXIT >#66#return; 65104#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 65101#factFINAL assume true; 65093#factEXIT >#74#return; 64777#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 64832#factENTRY ~n := #in~n; 64907#L25 assume ~n <= 0;#res := 1; 64834#factFINAL assume true; 64835#factEXIT >#76#return; 64774#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 65003#factENTRY ~n := #in~n; 65064#L25 assume !(~n <= 0); 65014#L26 call #t~ret0 := fact(~n - 1);< 65122#factENTRY ~n := #in~n; 65051#L25 assume ~n <= 0;#res := 1; 65139#factFINAL assume true; 65117#factEXIT >#66#return; 65120#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 65176#factFINAL assume true; 64767#factEXIT >#78#return; 64776#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 64763#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 64764#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64744#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 64742#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 64739#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 64474#L42-3 [2022-07-13 03:11:08,909 INFO L754 eck$LassoCheckResult]: Loop: 64474#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64473#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 64454#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 64471#factENTRY ~n := #in~n; 64580#L25 assume !(~n <= 0); 64496#L26 call #t~ret0 := fact(~n - 1);< 64543#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64502#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64525#factFINAL assume true; 64519#factEXIT >#66#return; 64524#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64583#factFINAL assume true; 64582#factEXIT >#68#return; 64449#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 64471#factENTRY ~n := #in~n; 64580#L25 assume ~n <= 0;#res := 1; 64470#factFINAL assume true; 64447#factEXIT >#70#return; 64466#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 64584#factENTRY ~n := #in~n; 64586#L25 assume !(~n <= 0); 64493#L26 call #t~ret0 := fact(~n - 1);< 64503#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64502#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64525#factFINAL assume true; 64519#factEXIT >#66#return; 64524#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64583#factFINAL assume true; 64582#factEXIT >#72#return; 64465#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 64596#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 64594#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64592#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64576#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 64460#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 64471#factENTRY ~n := #in~n; 64580#L25 assume !(~n <= 0); 64496#L26 call #t~ret0 := fact(~n - 1);< 64543#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64501#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64590#factFINAL assume true; 64574#factEXIT >#68#return; 64450#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 64471#factENTRY ~n := #in~n; 64580#L25 assume !(~n <= 0); 64496#L26 call #t~ret0 := fact(~n - 1);< 64543#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64502#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64525#factFINAL assume true; 64519#factEXIT >#66#return; 64524#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64583#factFINAL assume true; 64582#factEXIT >#70#return; 64457#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 64469#factENTRY ~n := #in~n; 64472#L25 assume ~n <= 0;#res := 1; 64470#factFINAL assume true; 64447#factEXIT >#72#return; 64446#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 64445#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 64444#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64443#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64423#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 64431#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 64438#factENTRY ~n := #in~n; 64440#L25 assume !(~n <= 0); 64441#L26 call #t~ret0 := fact(~n - 1);< 64543#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64502#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64525#factFINAL assume true; 64519#factEXIT >#66#return; 64510#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64511#factFINAL assume true; 64504#factEXIT >#66#return; 64484#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64482#factFINAL assume true; 64476#factEXIT >#74#return; 64432#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 64438#factENTRY ~n := #in~n; 64440#L25 assume ~n <= 0;#res := 1; 64439#factFINAL assume true; 64437#factEXIT >#76#return; 64433#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 64477#factENTRY ~n := #in~n; 64544#L25 assume !(~n <= 0); 64497#L26 call #t~ret0 := fact(~n - 1);< 64503#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64516#L25 assume !(~n <= 0); 64495#L26 call #t~ret0 := fact(~n - 1);< 64512#factENTRY ~n := #in~n; 64526#L25 assume ~n <= 0;#res := 1; 64566#factFINAL assume true; 64565#factEXIT >#66#return; 64564#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64557#factFINAL assume true; 64545#factEXIT >#66#return; 64529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64515#factFINAL assume true; 64485#factEXIT >#66#return; 64483#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64481#factFINAL assume true; 64480#factEXIT >#78#return; 64426#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 64425#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 64424#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64422#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 64398#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 64399#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 64474#L42-3 [2022-07-13 03:11:08,910 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:08,910 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 2 times [2022-07-13 03:11:08,910 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:08,910 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [525591063] [2022-07-13 03:11:08,910 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:08,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:08,918 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:08,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1051672570] [2022-07-13 03:11:08,919 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:08,919 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:08,919 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:08,923 INFO L229 MonitoredProcess]: Starting monitored process 79 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:11:08,951 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (79)] Waiting until timeout for monitored process [2022-07-13 03:11:08,989 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:08,990 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:08,990 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:09,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:09,017 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:09,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:09,018 INFO L85 PathProgramCache]: Analyzing trace with hash 163277867, now seen corresponding path program 4 times [2022-07-13 03:11:09,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:09,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [849564626] [2022-07-13 03:11:09,018 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:09,018 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:09,029 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:09,029 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [340689720] [2022-07-13 03:11:09,029 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:09,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:09,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:09,033 INFO L229 MonitoredProcess]: Starting monitored process 80 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:11:09,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (80)] Waiting until timeout for monitored process [2022-07-13 03:11:09,149 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:09,150 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:09,152 INFO L263 TraceCheckSpWp]: Trace formula consists of 437 conjuncts, 22 conjunts are in the unsatisfiable core [2022-07-13 03:11:09,155 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:09,317 INFO L134 CoverageAnalysis]: Checked inductivity of 2507 backedges. 1432 proven. 199 refuted. 0 times theorem prover too weak. 876 trivial. 0 not checked. [2022-07-13 03:11:09,317 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:10,306 INFO L134 CoverageAnalysis]: Checked inductivity of 2507 backedges. 148 proven. 793 refuted. 0 times theorem prover too weak. 1566 trivial. 0 not checked. [2022-07-13 03:11:10,306 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:10,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [849564626] [2022-07-13 03:11:10,306 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:10,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [340689720] [2022-07-13 03:11:10,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [340689720] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:10,306 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:10,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 21] total 24 [2022-07-13 03:11:10,307 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1327076230] [2022-07-13 03:11:10,307 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:10,307 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:10,307 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:10,308 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-07-13 03:11:10,308 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-07-13 03:11:10,308 INFO L87 Difference]: Start difference. First operand 1838 states and 3573 transitions. cyclomatic complexity: 1756 Second operand has 24 states, 21 states have (on average 3.0952380952380953) internal successors, (65), 24 states have internal predecessors, (65), 15 states have call successors, (26), 2 states have call predecessors, (26), 10 states have return successors, (30), 10 states have call predecessors, (30), 15 states have call successors, (30) [2022-07-13 03:11:11,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:11,279 INFO L93 Difference]: Finished difference Result 2469 states and 4880 transitions. [2022-07-13 03:11:11,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-07-13 03:11:11,280 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2469 states and 4880 transitions. [2022-07-13 03:11:11,305 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 266 [2022-07-13 03:11:11,329 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2469 states to 2234 states and 4268 transitions. [2022-07-13 03:11:11,329 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 513 [2022-07-13 03:11:11,330 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 519 [2022-07-13 03:11:11,330 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2234 states and 4268 transitions. [2022-07-13 03:11:11,330 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:11,330 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2234 states and 4268 transitions. [2022-07-13 03:11:11,331 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2234 states and 4268 transitions. [2022-07-13 03:11:11,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2234 to 1996. [2022-07-13 03:11:11,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1996 states, 1219 states have (on average 1.1009023789991796) internal successors, (1342), 1179 states have internal predecessors, (1342), 556 states have call successors, (556), 242 states have call predecessors, (556), 221 states have return successors, (1920), 574 states have call predecessors, (1920), 556 states have call successors, (1920) [2022-07-13 03:11:11,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1996 states to 1996 states and 3818 transitions. [2022-07-13 03:11:11,403 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1996 states and 3818 transitions. [2022-07-13 03:11:11,403 INFO L374 stractBuchiCegarLoop]: Abstraction has 1996 states and 3818 transitions. [2022-07-13 03:11:11,403 INFO L287 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2022-07-13 03:11:11,403 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1996 states and 3818 transitions. [2022-07-13 03:11:11,411 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 208 [2022-07-13 03:11:11,411 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:11,412 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:11,414 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:11,414 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [25, 25, 16, 16, 16, 16, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:11,414 INFO L752 eck$LassoCheckResult]: Stem: 69951#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 69922#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 69923#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 69950#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 69936#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 69937#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71049#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 71047#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71048#factENTRY ~n := #in~n; 71054#L25 assume ~n <= 0;#res := 1; 71052#factFINAL assume true; 71046#factEXIT >#68#return; 71043#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71045#factENTRY ~n := #in~n; 71053#L25 assume ~n <= 0;#res := 1; 71051#factFINAL assume true; 71042#factEXIT >#70#return; 71044#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 71045#factENTRY ~n := #in~n; 71053#L25 assume ~n <= 0;#res := 1; 71051#factFINAL assume true; 71042#factEXIT >#72#return; 71041#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 71038#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 71034#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 71032#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71029#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 70424#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71027#factENTRY ~n := #in~n; 71023#L25 assume !(~n <= 0); 70985#L26 call #t~ret0 := fact(~n - 1);< 71020#factENTRY ~n := #in~n; 71021#L25 assume ~n <= 0;#res := 1; 71079#factFINAL assume true; 71077#factEXIT >#66#return; 70995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71075#factFINAL assume true; 71056#factEXIT >#74#return; 70459#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71082#factENTRY ~n := #in~n; 71085#L25 assume ~n <= 0;#res := 1; 71083#factFINAL assume true; 71081#factEXIT >#76#return; 70454#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70976#factENTRY ~n := #in~n; 71080#L25 assume !(~n <= 0); 70986#L26 call #t~ret0 := fact(~n - 1);< 70998#factENTRY ~n := #in~n; 71002#L25 assume ~n <= 0;#res := 1; 70999#factFINAL assume true; 70992#factEXIT >#66#return; 70978#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70975#factFINAL assume true; 70449#factEXIT >#78#return; 70458#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 70417#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 70418#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 70408#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 70406#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 70404#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 70180#L42-3 [2022-07-13 03:11:11,415 INFO L754 eck$LassoCheckResult]: Loop: 70180#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 70094#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 70068#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 70090#factENTRY ~n := #in~n; 70221#L25 assume !(~n <= 0); 70110#L26 call #t~ret0 := fact(~n - 1);< 70194#factENTRY ~n := #in~n; 70178#L25 assume ~n <= 0;#res := 1; 70198#factFINAL assume true; 70183#factEXIT >#66#return; 70190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70216#factFINAL assume true; 70215#factEXIT >#68#return; 70073#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 70091#factENTRY ~n := #in~n; 70224#L25 assume ~n <= 0;#res := 1; 70089#factFINAL assume true; 70060#factEXIT >#70#return; 70085#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70217#factENTRY ~n := #in~n; 70222#L25 assume !(~n <= 0); 70110#L26 call #t~ret0 := fact(~n - 1);< 70194#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70175#L25 assume ~n <= 0;#res := 1; 70173#factFINAL assume true; 70161#factEXIT >#66#return; 70159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70152#factFINAL assume true; 70131#factEXIT >#66#return; 70143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70158#factFINAL assume true; 70147#factEXIT >#66#return; 70130#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70126#factFINAL assume true; 70097#factEXIT >#66#return; 70122#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70172#factFINAL assume true; 70166#factEXIT >#66#return; 70170#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70212#factFINAL assume true; 70211#factEXIT >#72#return; 70200#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 70269#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 70231#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 70230#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 70229#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 70042#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 70090#factENTRY ~n := #in~n; 70221#L25 assume !(~n <= 0); 70110#L26 call #t~ret0 := fact(~n - 1);< 70194#factENTRY ~n := #in~n; 70178#L25 assume ~n <= 0;#res := 1; 70198#factFINAL assume true; 70183#factEXIT >#66#return; 70190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70216#factFINAL assume true; 70215#factEXIT >#68#return; 70075#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 70091#factENTRY ~n := #in~n; 70224#L25 assume !(~n <= 0); 70187#L26 call #t~ret0 := fact(~n - 1);< 69929#factENTRY ~n := #in~n; 70178#L25 assume ~n <= 0;#res := 1; 70198#factFINAL assume true; 70183#factEXIT >#66#return; 70190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70216#factFINAL assume true; 70215#factEXIT >#70#return; 70064#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70092#factENTRY ~n := #in~n; 70179#L25 assume ~n <= 0;#res := 1; 70089#factFINAL assume true; 70060#factEXIT >#72#return; 70079#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 70223#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 70218#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 70208#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 69997#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 70031#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 70041#factENTRY ~n := #in~n; 70197#L25 assume !(~n <= 0); 70101#L26 call #t~ret0 := fact(~n - 1);< 70194#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70175#L25 assume ~n <= 0;#res := 1; 70173#factFINAL assume true; 70161#factEXIT >#66#return; 70159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70152#factFINAL assume true; 70131#factEXIT >#66#return; 70143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70158#factFINAL assume true; 70147#factEXIT >#66#return; 70043#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70035#factFINAL assume true; 70038#factEXIT >#74#return; 70023#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 70041#factENTRY ~n := #in~n; 70197#L25 assume ~n <= 0;#res := 1; 70195#factFINAL assume true; 70182#factEXIT >#76#return; 70036#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70058#factENTRY ~n := #in~n; 70210#L25 assume !(~n <= 0); 70115#L26 call #t~ret0 := fact(~n - 1);< 70145#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70174#L25 assume !(~n <= 0); 70107#L26 call #t~ret0 := fact(~n - 1);< 70163#factENTRY ~n := #in~n; 70175#L25 assume ~n <= 0;#res := 1; 70173#factFINAL assume true; 70161#factEXIT >#66#return; 70159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70152#factFINAL assume true; 70131#factEXIT >#66#return; 70143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70158#factFINAL assume true; 70147#factEXIT >#66#return; 70130#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70126#factFINAL assume true; 70097#factEXIT >#66#return; 70122#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70172#factFINAL assume true; 70166#factEXIT >#66#return; 70160#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70157#factFINAL assume true; 70146#factEXIT >#78#return; 70004#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 70002#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 70000#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 69995#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 69996#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 70202#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 70180#L42-3 [2022-07-13 03:11:11,415 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:11,415 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 3 times [2022-07-13 03:11:11,415 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:11,415 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [781918276] [2022-07-13 03:11:11,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:11,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:11,425 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:11,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [955512885] [2022-07-13 03:11:11,426 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:11,426 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:11,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:11,431 INFO L229 MonitoredProcess]: Starting monitored process 81 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:11:11,451 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Waiting until timeout for monitored process [2022-07-13 03:11:11,506 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-07-13 03:11:11,506 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:11,507 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:11,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:11,535 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:11,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:11,536 INFO L85 PathProgramCache]: Analyzing trace with hash 1259729139, now seen corresponding path program 5 times [2022-07-13 03:11:11,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:11,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [848160015] [2022-07-13 03:11:11,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:11,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:11,544 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:11,544 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2091572044] [2022-07-13 03:11:11,544 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:11,544 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:11,545 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:11,551 INFO L229 MonitoredProcess]: Starting monitored process 82 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:11:11,575 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Waiting until timeout for monitored process [2022-07-13 03:11:11,690 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2022-07-13 03:11:11,690 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:11,692 INFO L263 TraceCheckSpWp]: Trace formula consists of 320 conjuncts, 20 conjunts are in the unsatisfiable core [2022-07-13 03:11:11,695 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:11,830 INFO L134 CoverageAnalysis]: Checked inductivity of 1457 backedges. 833 proven. 143 refuted. 0 times theorem prover too weak. 481 trivial. 0 not checked. [2022-07-13 03:11:11,830 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:12,334 INFO L134 CoverageAnalysis]: Checked inductivity of 1457 backedges. 81 proven. 446 refuted. 0 times theorem prover too weak. 930 trivial. 0 not checked. [2022-07-13 03:11:12,334 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:12,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [848160015] [2022-07-13 03:11:12,334 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:12,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2091572044] [2022-07-13 03:11:12,334 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2091572044] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:12,334 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:12,334 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 17] total 23 [2022-07-13 03:11:12,334 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1717026764] [2022-07-13 03:11:12,335 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:12,335 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:12,335 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:12,335 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-07-13 03:11:12,335 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=433, Unknown=0, NotChecked=0, Total=506 [2022-07-13 03:11:12,336 INFO L87 Difference]: Start difference. First operand 1996 states and 3818 transitions. cyclomatic complexity: 1849 Second operand has 23 states, 17 states have (on average 3.411764705882353) internal successors, (58), 21 states have internal predecessors, (58), 14 states have call successors, (26), 2 states have call predecessors, (26), 7 states have return successors, (27), 12 states have call predecessors, (27), 14 states have call successors, (27) [2022-07-13 03:11:13,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:13,289 INFO L93 Difference]: Finished difference Result 3193 states and 5594 transitions. [2022-07-13 03:11:13,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-07-13 03:11:13,290 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3193 states and 5594 transitions. [2022-07-13 03:11:13,307 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 513 [2022-07-13 03:11:13,333 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3193 states to 3193 states and 5594 transitions. [2022-07-13 03:11:13,333 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 810 [2022-07-13 03:11:13,334 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 810 [2022-07-13 03:11:13,334 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3193 states and 5594 transitions. [2022-07-13 03:11:13,334 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:13,334 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3193 states and 5594 transitions. [2022-07-13 03:11:13,336 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3193 states and 5594 transitions. [2022-07-13 03:11:13,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3193 to 2398. [2022-07-13 03:11:13,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2398 states, 1465 states have (on average 1.0839590443686007) internal successors, (1588), 1423 states have internal predecessors, (1588), 712 states have call successors, (712), 242 states have call predecessors, (712), 221 states have return successors, (2339), 732 states have call predecessors, (2339), 712 states have call successors, (2339) [2022-07-13 03:11:13,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2398 states to 2398 states and 4639 transitions. [2022-07-13 03:11:13,407 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2398 states and 4639 transitions. [2022-07-13 03:11:13,407 INFO L374 stractBuchiCegarLoop]: Abstraction has 2398 states and 4639 transitions. [2022-07-13 03:11:13,407 INFO L287 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2022-07-13 03:11:13,407 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2398 states and 4639 transitions. [2022-07-13 03:11:13,416 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 305 [2022-07-13 03:11:13,416 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:13,416 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:13,417 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:13,417 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [22, 22, 13, 13, 13, 13, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:13,417 INFO L752 eck$LassoCheckResult]: Stem: 76185#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 76157#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 76158#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 76184#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 76170#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 76171#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76797#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 76794#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76795#factENTRY ~n := #in~n; 76798#L25 assume ~n <= 0;#res := 1; 76796#factFINAL assume true; 76793#factEXIT >#68#return; 76789#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76790#factENTRY ~n := #in~n; 76792#L25 assume ~n <= 0;#res := 1; 76791#factFINAL assume true; 76787#factEXIT >#70#return; 76788#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76790#factENTRY ~n := #in~n; 76792#L25 assume ~n <= 0;#res := 1; 76791#factFINAL assume true; 76787#factEXIT >#72#return; 76786#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 76785#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 76784#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76783#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76781#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 76774#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76778#factENTRY ~n := #in~n; 76845#L25 assume !(~n <= 0); 76810#L26 call #t~ret0 := fact(~n - 1);< 76843#factENTRY ~n := #in~n; 76844#L25 assume ~n <= 0;#res := 1; 76892#factFINAL assume true; 76883#factEXIT >#66#return; 76867#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76868#factFINAL assume true; 76847#factEXIT >#74#return; 76849#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76906#factENTRY ~n := #in~n; 76907#L25 assume ~n <= 0;#res := 1; 76905#factFINAL assume true; 76904#factEXIT >#76#return; 76874#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76900#factENTRY ~n := #in~n; 76908#L25 assume !(~n <= 0); 76812#L26 call #t~ret0 := fact(~n - 1);< 76885#factENTRY ~n := #in~n; 76841#L25 assume ~n <= 0;#res := 1; 76886#factFINAL assume true; 76879#factEXIT >#66#return; 76882#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76899#factFINAL assume true; 76897#factEXIT >#78#return; 76877#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 77469#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 76736#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76731#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 76728#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 76723#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 76440#L42-3 [2022-07-13 03:11:13,417 INFO L754 eck$LassoCheckResult]: Loop: 76440#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76433#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 76401#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76430#factENTRY ~n := #in~n; 76466#L25 assume !(~n <= 0); 76288#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76309#L25 assume ~n <= 0;#res := 1; 76297#factFINAL assume true; 76304#factEXIT >#66#return; 76351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76456#factFINAL assume true; 76453#factEXIT >#68#return; 76397#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76431#factENTRY ~n := #in~n; 76432#L25 assume ~n <= 0;#res := 1; 76429#factFINAL assume true; 76389#factEXIT >#70#return; 76421#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76458#factENTRY ~n := #in~n; 76465#L25 assume !(~n <= 0); 76288#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76309#L25 assume ~n <= 0;#res := 1; 76297#factFINAL assume true; 76304#factEXIT >#66#return; 76351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76456#factFINAL assume true; 76453#factEXIT >#72#return; 76454#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 76500#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 76499#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76498#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76446#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 76259#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76430#factENTRY ~n := #in~n; 76466#L25 assume !(~n <= 0); 76288#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76319#L25 assume !(~n <= 0); 76284#L26 call #t~ret0 := fact(~n - 1);< 76315#factENTRY ~n := #in~n; 76319#L25 assume !(~n <= 0); 76284#L26 call #t~ret0 := fact(~n - 1);< 76315#factENTRY ~n := #in~n; 76321#L25 assume ~n <= 0;#res := 1; 76317#factFINAL assume true; 76313#factEXIT >#66#return; 76310#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76311#factFINAL assume true; 76268#factEXIT >#66#return; 76295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76362#factFINAL assume true; 76355#factEXIT >#66#return; 76357#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76460#factFINAL assume true; 76435#factEXIT >#68#return; 76411#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76430#factENTRY ~n := #in~n; 76466#L25 assume !(~n <= 0); 76288#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76319#L25 assume !(~n <= 0); 76284#L26 call #t~ret0 := fact(~n - 1);< 76315#factENTRY ~n := #in~n; 76321#L25 assume ~n <= 0;#res := 1; 76317#factFINAL assume true; 76313#factEXIT >#66#return; 76310#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76311#factFINAL assume true; 76268#factEXIT >#66#return; 76291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76447#factFINAL assume true; 76448#factEXIT >#70#return; 76404#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76457#factENTRY ~n := #in~n; 76461#L25 assume ~n <= 0;#res := 1; 76429#factFINAL assume true; 76389#factEXIT >#72#return; 76423#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 76496#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 76495#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76494#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76227#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 76242#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76258#factENTRY ~n := #in~n; 76375#L25 assume !(~n <= 0); 76274#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76319#L25 assume !(~n <= 0); 76284#L26 call #t~ret0 := fact(~n - 1);< 76315#factENTRY ~n := #in~n; 76319#L25 assume !(~n <= 0); 76284#L26 call #t~ret0 := fact(~n - 1);< 76315#factENTRY ~n := #in~n; 76321#L25 assume ~n <= 0;#res := 1; 76317#factFINAL assume true; 76313#factEXIT >#66#return; 76310#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76311#factFINAL assume true; 76268#factEXIT >#66#return; 76295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76362#factFINAL assume true; 76355#factEXIT >#66#return; 76354#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76348#factFINAL assume true; 76347#factEXIT >#74#return; 76243#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76258#factENTRY ~n := #in~n; 76375#L25 assume !(~n <= 0); 76274#L26 call #t~ret0 := fact(~n - 1);< 76323#factENTRY ~n := #in~n; 76309#L25 assume ~n <= 0;#res := 1; 76297#factFINAL assume true; 76304#factEXIT >#66#return; 76266#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76267#factFINAL assume true; 76238#factEXIT >#76#return; 76241#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76251#factENTRY ~n := #in~n; 76363#L25 assume !(~n <= 0); 76271#L26 call #t~ret0 := fact(~n - 1);< 76296#factENTRY ~n := #in~n; 76320#L25 assume !(~n <= 0); 76314#L26 call #t~ret0 := fact(~n - 1);< 76316#factENTRY ~n := #in~n; 76321#L25 assume ~n <= 0;#res := 1; 76317#factFINAL assume true; 76313#factEXIT >#66#return; 76310#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76311#factFINAL assume true; 76268#factEXIT >#66#return; 76290#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76262#factFINAL assume true; 76263#factEXIT >#78#return; 76236#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 76237#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 76434#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76225#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 76226#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 76445#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 76440#L42-3 [2022-07-13 03:11:13,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:13,418 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 4 times [2022-07-13 03:11:13,418 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:13,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1117854315] [2022-07-13 03:11:13,418 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:13,418 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:13,422 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:13,423 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1624147039] [2022-07-13 03:11:13,423 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:13,423 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:13,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:13,428 INFO L229 MonitoredProcess]: Starting monitored process 83 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:11:13,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (83)] Waiting until timeout for monitored process [2022-07-13 03:11:13,495 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:13,496 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:13,496 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:13,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:13,526 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:13,526 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:13,527 INFO L85 PathProgramCache]: Analyzing trace with hash 813103979, now seen corresponding path program 6 times [2022-07-13 03:11:13,527 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:13,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [415375668] [2022-07-13 03:11:13,527 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:13,527 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:13,534 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:13,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [569411625] [2022-07-13 03:11:13,535 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:11:13,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:13,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:13,539 INFO L229 MonitoredProcess]: Starting monitored process 84 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:11:13,563 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (84)] Waiting until timeout for monitored process [2022-07-13 03:11:13,677 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2022-07-13 03:11:13,677 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:13,678 INFO L263 TraceCheckSpWp]: Trace formula consists of 286 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-13 03:11:13,680 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:13,759 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 3 refuted. 0 times theorem prover too weak. 914 trivial. 0 not checked. [2022-07-13 03:11:13,759 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:13,980 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 4 refuted. 0 times theorem prover too weak. 913 trivial. 0 not checked. [2022-07-13 03:11:13,980 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:13,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [415375668] [2022-07-13 03:11:13,980 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:13,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [569411625] [2022-07-13 03:11:13,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [569411625] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:13,980 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:13,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2022-07-13 03:11:13,980 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [300556862] [2022-07-13 03:11:13,981 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:13,981 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:13,981 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:13,981 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-13 03:11:13,981 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-07-13 03:11:13,981 INFO L87 Difference]: Start difference. First operand 2398 states and 4639 transitions. cyclomatic complexity: 2268 Second operand has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 10 states have internal predecessors, (33), 6 states have call successors, (13), 1 states have call predecessors, (13), 3 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-13 03:11:14,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:14,184 INFO L93 Difference]: Finished difference Result 2740 states and 5477 transitions. [2022-07-13 03:11:14,184 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-13 03:11:14,185 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2740 states and 5477 transitions. [2022-07-13 03:11:14,207 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 395 [2022-07-13 03:11:14,234 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2740 states to 2717 states and 5391 transitions. [2022-07-13 03:11:14,235 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 667 [2022-07-13 03:11:14,236 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 667 [2022-07-13 03:11:14,236 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2717 states and 5391 transitions. [2022-07-13 03:11:14,236 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:14,237 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2717 states and 5391 transitions. [2022-07-13 03:11:14,238 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2717 states and 5391 transitions. [2022-07-13 03:11:14,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2717 to 2555. [2022-07-13 03:11:14,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2555 states, 1490 states have (on average 1.0939597315436242) internal successors, (1630), 1465 states have internal predecessors, (1630), 844 states have call successors, (844), 242 states have call predecessors, (844), 221 states have return successors, (2700), 847 states have call predecessors, (2700), 844 states have call successors, (2700) [2022-07-13 03:11:14,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2555 states to 2555 states and 5174 transitions. [2022-07-13 03:11:14,341 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2555 states and 5174 transitions. [2022-07-13 03:11:14,342 INFO L374 stractBuchiCegarLoop]: Abstraction has 2555 states and 5174 transitions. [2022-07-13 03:11:14,342 INFO L287 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2022-07-13 03:11:14,342 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2555 states and 5174 transitions. [2022-07-13 03:11:14,351 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 354 [2022-07-13 03:11:14,351 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:14,351 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:14,352 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:14,352 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [26, 26, 17, 17, 17, 17, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:14,352 INFO L752 eck$LassoCheckResult]: Stem: 82202#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 82163#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 82164#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 82201#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 82186#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82187#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 83678#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 83676#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 83677#factENTRY ~n := #in~n; 83682#L25 assume ~n <= 0;#res := 1; 83680#factFINAL assume true; 83675#factEXIT >#68#return; 83671#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 83673#factENTRY ~n := #in~n; 83679#L25 assume ~n <= 0;#res := 1; 83674#factFINAL assume true; 83670#factEXIT >#70#return; 83672#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 83673#factENTRY ~n := #in~n; 83679#L25 assume ~n <= 0;#res := 1; 83674#factFINAL assume true; 83670#factEXIT >#72#return; 83669#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 83668#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 83667#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 83661#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 83658#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 82798#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 83562#factENTRY ~n := #in~n; 83617#L25 assume !(~n <= 0); 83574#L26 call #t~ret0 := fact(~n - 1);< 83610#factENTRY ~n := #in~n; 83611#L25 assume ~n <= 0;#res := 1; 83642#factFINAL assume true; 83641#factEXIT >#66#return; 83586#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 83628#factFINAL assume true; 83624#factEXIT >#74#return; 83625#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 83637#factENTRY ~n := #in~n; 83640#L25 assume ~n <= 0;#res := 1; 83638#factFINAL assume true; 83636#factEXIT >#76#return; 82811#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 83619#factENTRY ~n := #in~n; 83612#L25 assume !(~n <= 0); 83572#L26 call #t~ret0 := fact(~n - 1);< 83589#factENTRY ~n := #in~n; 83609#L25 assume ~n <= 0;#res := 1; 83590#factFINAL assume true; 83583#factEXIT >#66#return; 83569#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 83566#factFINAL assume true; 82804#factEXIT >#78#return; 82786#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 82787#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82779#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82775#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 82773#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 82768#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82429#L42-3 [2022-07-13 03:11:14,353 INFO L754 eck$LassoCheckResult]: Loop: 82429#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82407#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 82371#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82405#factENTRY ~n := #in~n; 82461#L25 assume !(~n <= 0); 82282#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82319#L25 assume ~n <= 0;#res := 1; 82297#factFINAL assume true; 82279#factEXIT >#66#return; 82293#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82453#factFINAL assume true; 82449#factEXIT >#68#return; 82387#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82403#factENTRY ~n := #in~n; 82406#L25 assume ~n <= 0;#res := 1; 82404#factFINAL assume true; 82363#factEXIT >#70#return; 82394#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82454#factENTRY ~n := #in~n; 82462#L25 assume !(~n <= 0); 82282#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82319#L25 assume ~n <= 0;#res := 1; 82297#factFINAL assume true; 82279#factEXIT >#66#return; 82293#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82453#factFINAL assume true; 82449#factEXIT >#72#return; 82451#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 82464#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82463#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82460#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82456#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 82349#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82405#factENTRY ~n := #in~n; 82461#L25 assume !(~n <= 0); 82282#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82348#L25 assume ~n <= 0;#res := 1; 82347#factFINAL assume true; 82345#factEXIT >#66#return; 82344#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82340#factFINAL assume true; 82332#factEXIT >#66#return; 82337#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82458#factFINAL assume true; 82455#factEXIT >#68#return; 82369#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82405#factENTRY ~n := #in~n; 82461#L25 assume !(~n <= 0); 82282#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82348#L25 assume ~n <= 0;#res := 1; 82347#factFINAL assume true; 82345#factEXIT >#66#return; 82344#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82340#factFINAL assume true; 82332#factEXIT >#66#return; 82335#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82420#factFINAL assume true; 82412#factEXIT >#66#return; 82415#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82473#factFINAL assume true; 82467#factEXIT >#70#return; 82381#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82403#factENTRY ~n := #in~n; 82406#L25 assume ~n <= 0;#res := 1; 82404#factFINAL assume true; 82363#factEXIT >#72#return; 82362#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 82360#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82358#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82356#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82354#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 82252#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82274#factENTRY ~n := #in~n; 82503#L25 assume !(~n <= 0); 82284#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82348#L25 assume ~n <= 0;#res := 1; 82347#factFINAL assume true; 82345#factEXIT >#66#return; 82344#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82340#factFINAL assume true; 82332#factEXIT >#66#return; 82335#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82420#factFINAL assume true; 82412#factEXIT >#66#return; 82414#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82428#factFINAL assume true; 82421#factEXIT >#66#return; 82423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82436#factFINAL assume true; 82437#factEXIT >#66#return; 82441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82504#factFINAL assume true; 82351#factEXIT >#74#return; 82256#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82274#factENTRY ~n := #in~n; 82503#L25 assume !(~n <= 0); 82284#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82306#L25 assume !(~n <= 0); 82309#L26 call #t~ret0 := fact(~n - 1);< 82346#factENTRY ~n := #in~n; 82348#L25 assume ~n <= 0;#res := 1; 82347#factFINAL assume true; 82345#factEXIT >#66#return; 82344#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82340#factFINAL assume true; 82332#factEXIT >#66#return; 82335#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82420#factFINAL assume true; 82412#factEXIT >#66#return; 82414#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82428#factFINAL assume true; 82421#factEXIT >#66#return; 82419#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82411#factFINAL assume true; 82352#factEXIT >#76#return; 82263#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82270#factENTRY ~n := #in~n; 82448#L25 assume !(~n <= 0); 82284#L26 call #t~ret0 := fact(~n - 1);< 82339#factENTRY ~n := #in~n; 82319#L25 assume ~n <= 0;#res := 1; 82297#factFINAL assume true; 82279#factEXIT >#66#return; 82278#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82271#factFINAL assume true; 82245#factEXIT >#78#return; 82267#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 82241#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82242#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82236#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 82237#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 82495#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82429#L42-3 [2022-07-13 03:11:14,354 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:14,354 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 5 times [2022-07-13 03:11:14,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:14,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359541969] [2022-07-13 03:11:14,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:14,355 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:14,359 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:14,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1998191397] [2022-07-13 03:11:14,360 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:14,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:14,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:14,363 INFO L229 MonitoredProcess]: Starting monitored process 85 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:11:14,379 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (85)] Waiting until timeout for monitored process [2022-07-13 03:11:14,437 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2022-07-13 03:11:14,437 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:14,437 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:14,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:14,466 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:14,466 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:14,466 INFO L85 PathProgramCache]: Analyzing trace with hash 572419051, now seen corresponding path program 7 times [2022-07-13 03:11:14,466 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:14,467 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1810931713] [2022-07-13 03:11:14,467 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:14,467 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:14,472 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:14,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [730601683] [2022-07-13 03:11:14,473 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:11:14,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:14,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:14,477 INFO L229 MonitoredProcess]: Starting monitored process 86 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:11:14,478 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (86)] Waiting until timeout for monitored process [2022-07-13 03:11:14,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:14,581 INFO L263 TraceCheckSpWp]: Trace formula consists of 365 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:11:14,588 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:14,676 INFO L134 CoverageAnalysis]: Checked inductivity of 1589 backedges. 723 proven. 48 refuted. 0 times theorem prover too weak. 818 trivial. 0 not checked. [2022-07-13 03:11:14,676 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:15,051 INFO L134 CoverageAnalysis]: Checked inductivity of 1589 backedges. 43 proven. 344 refuted. 0 times theorem prover too weak. 1202 trivial. 0 not checked. [2022-07-13 03:11:15,052 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:15,052 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1810931713] [2022-07-13 03:11:15,052 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:15,052 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [730601683] [2022-07-13 03:11:15,052 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [730601683] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:15,052 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:15,052 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13] total 16 [2022-07-13 03:11:15,052 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1684375701] [2022-07-13 03:11:15,052 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:15,053 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:15,053 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:15,053 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-07-13 03:11:15,053 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-07-13 03:11:15,053 INFO L87 Difference]: Start difference. First operand 2555 states and 5174 transitions. cyclomatic complexity: 2646 Second operand has 16 states, 13 states have (on average 3.769230769230769) internal successors, (49), 16 states have internal predecessors, (49), 11 states have call successors, (22), 2 states have call predecessors, (22), 6 states have return successors, (22), 6 states have call predecessors, (22), 11 states have call successors, (22) [2022-07-13 03:11:15,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:15,458 INFO L93 Difference]: Finished difference Result 2578 states and 4976 transitions. [2022-07-13 03:11:15,458 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-07-13 03:11:15,459 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2578 states and 4976 transitions. [2022-07-13 03:11:15,479 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 368 [2022-07-13 03:11:15,504 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2578 states to 2454 states and 4765 transitions. [2022-07-13 03:11:15,504 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 616 [2022-07-13 03:11:15,505 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 616 [2022-07-13 03:11:15,505 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2454 states and 4765 transitions. [2022-07-13 03:11:15,506 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:15,506 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2454 states and 4765 transitions. [2022-07-13 03:11:15,507 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2454 states and 4765 transitions. [2022-07-13 03:11:15,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2454 to 2332. [2022-07-13 03:11:15,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2332 states, 1372 states have (on average 1.1071428571428572) internal successors, (1519), 1350 states have internal predecessors, (1519), 746 states have call successors, (746), 223 states have call predecessors, (746), 214 states have return successors, (2297), 758 states have call predecessors, (2297), 746 states have call successors, (2297) [2022-07-13 03:11:15,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2332 states to 2332 states and 4562 transitions. [2022-07-13 03:11:15,572 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2332 states and 4562 transitions. [2022-07-13 03:11:15,573 INFO L374 stractBuchiCegarLoop]: Abstraction has 2332 states and 4562 transitions. [2022-07-13 03:11:15,573 INFO L287 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2022-07-13 03:11:15,573 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2332 states and 4562 transitions. [2022-07-13 03:11:15,580 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 360 [2022-07-13 03:11:15,581 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:15,581 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:15,582 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:15,582 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [18, 18, 9, 9, 9, 9, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:15,582 INFO L752 eck$LassoCheckResult]: Stem: 88310#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 88276#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 88277#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 88309#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 88294#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 88295#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89536#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 89835#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89836#factENTRY ~n := #in~n; 89899#L25 assume ~n <= 0;#res := 1; 89897#factFINAL assume true; 89834#factEXIT >#68#return; 89805#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89826#factENTRY ~n := #in~n; 89869#L25 assume ~n <= 0;#res := 1; 89868#factFINAL assume true; 89804#factEXIT >#70#return; 89806#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89826#factENTRY ~n := #in~n; 89869#L25 assume ~n <= 0;#res := 1; 89868#factFINAL assume true; 89804#factEXIT >#72#return; 89807#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 89786#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89782#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89783#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 90313#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 89151#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89390#factENTRY ~n := #in~n; 90406#L25 assume !(~n <= 0); 90276#L26 call #t~ret0 := fact(~n - 1);< 90393#factENTRY ~n := #in~n; 90400#L25 assume ~n <= 0;#res := 1; 90398#factFINAL assume true; 90392#factEXIT >#66#return; 90386#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90382#factFINAL assume true; 90379#factEXIT >#74#return; 90380#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 88335#factENTRY ~n := #in~n; 90404#L25 assume ~n <= 0;#res := 1; 90403#factFINAL assume true; 90396#factEXIT >#76#return; 89337#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 90408#factENTRY ~n := #in~n; 90427#L25 assume !(~n <= 0); 90277#L26 call #t~ret0 := fact(~n - 1);< 90417#factENTRY ~n := #in~n; 90407#L25 assume ~n <= 0;#res := 1; 90394#factFINAL assume true; 90387#factEXIT >#66#return; 90385#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90381#factFINAL assume true; 90378#factEXIT >#78#return; 89341#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 89330#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 89331#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 88787#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 88784#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 88785#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89117#L42-3 [2022-07-13 03:11:15,582 INFO L754 eck$LassoCheckResult]: Loop: 89117#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 88971#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 88922#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 88949#factENTRY ~n := #in~n; 88997#L25 assume !(~n <= 0); 88817#L26 call #t~ret0 := fact(~n - 1);< 88864#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88863#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88989#factFINAL assume true; 88983#factEXIT >#68#return; 88907#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 88950#factENTRY ~n := #in~n; 88970#L25 assume ~n <= 0;#res := 1; 88948#factFINAL assume true; 88904#factEXIT >#70#return; 88935#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 88991#factENTRY ~n := #in~n; 88996#L25 assume !(~n <= 0); 88817#L26 call #t~ret0 := fact(~n - 1);< 88864#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88863#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88989#factFINAL assume true; 88983#factEXIT >#72#return; 88986#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 89230#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89227#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89225#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89190#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 88917#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 88990#factENTRY ~n := #in~n; 89118#L25 assume !(~n <= 0); 88858#L26 call #t~ret0 := fact(~n - 1);< 88830#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88863#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88989#factFINAL assume true; 88983#factEXIT >#68#return; 88915#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 88990#factENTRY ~n := #in~n; 89118#L25 assume !(~n <= 0); 88858#L26 call #t~ret0 := fact(~n - 1);< 88830#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88863#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88989#factFINAL assume true; 88983#factEXIT >#70#return; 88919#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 88950#factENTRY ~n := #in~n; 88970#L25 assume ~n <= 0;#res := 1; 88948#factFINAL assume true; 88904#factEXIT >#72#return; 88944#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 89016#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89015#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89014#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89013#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 88423#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 88791#factENTRY ~n := #in~n; 88895#L25 assume !(~n <= 0); 88820#L26 call #t~ret0 := fact(~n - 1);< 88864#factENTRY ~n := #in~n; 88838#L25 assume !(~n <= 0); 88815#L26 call #t~ret0 := fact(~n - 1);< 88874#factENTRY ~n := #in~n; 88838#L25 assume !(~n <= 0); 88815#L26 call #t~ret0 := fact(~n - 1);< 88874#factENTRY ~n := #in~n; 88876#L25 assume ~n <= 0;#res := 1; 88875#factFINAL assume true; 88873#factEXIT >#66#return; 88872#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88866#factFINAL assume true; 88867#factEXIT >#66#return; 88883#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88831#factFINAL assume true; 88807#factEXIT >#66#return; 88792#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88788#factFINAL assume true; 88398#factEXIT >#74#return; 88405#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 88791#factENTRY ~n := #in~n; 88895#L25 assume !(~n <= 0); 88820#L26 call #t~ret0 := fact(~n - 1);< 88864#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88853#factFINAL assume true; 88848#factEXIT >#76#return; 88435#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 88847#factENTRY ~n := #in~n; 88846#L25 assume !(~n <= 0); 88287#L26 call #t~ret0 := fact(~n - 1);< 88885#factENTRY ~n := #in~n; 88870#L25 assume ~n <= 0;#res := 1; 88871#factFINAL assume true; 88854#factEXIT >#66#return; 88852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 88853#factFINAL assume true; 88848#factEXIT >#78#return; 88430#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 88394#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 88395#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89007#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 88305#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 88306#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89117#L42-3 [2022-07-13 03:11:15,583 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:15,583 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 6 times [2022-07-13 03:11:15,583 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:15,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [678694642] [2022-07-13 03:11:15,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:15,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:15,588 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:15,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1426696232] [2022-07-13 03:11:15,588 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:11:15,588 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:15,588 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:15,591 INFO L229 MonitoredProcess]: Starting monitored process 87 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:11:15,627 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (87)] Waiting until timeout for monitored process [2022-07-13 03:11:15,682 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-07-13 03:11:15,682 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:15,682 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:15,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:15,708 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:15,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:15,708 INFO L85 PathProgramCache]: Analyzing trace with hash 1374943147, now seen corresponding path program 8 times [2022-07-13 03:11:15,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:15,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [346492959] [2022-07-13 03:11:15,709 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:15,709 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:15,714 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:15,714 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [767551269] [2022-07-13 03:11:15,714 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:15,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:15,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:15,719 INFO L229 MonitoredProcess]: Starting monitored process 88 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:11:15,726 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (88)] Waiting until timeout for monitored process [2022-07-13 03:11:15,800 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:15,800 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:15,801 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 16 conjunts are in the unsatisfiable core [2022-07-13 03:11:15,803 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:15,907 INFO L134 CoverageAnalysis]: Checked inductivity of 701 backedges. 387 proven. 46 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-07-13 03:11:15,907 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:16,246 INFO L134 CoverageAnalysis]: Checked inductivity of 701 backedges. 135 proven. 110 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-07-13 03:11:16,247 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:16,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [346492959] [2022-07-13 03:11:16,247 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:16,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [767551269] [2022-07-13 03:11:16,247 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [767551269] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:16,247 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:16,248 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 18 [2022-07-13 03:11:16,248 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1197682926] [2022-07-13 03:11:16,248 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:16,248 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:16,248 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:16,249 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-07-13 03:11:16,249 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=254, Unknown=0, NotChecked=0, Total=306 [2022-07-13 03:11:16,249 INFO L87 Difference]: Start difference. First operand 2332 states and 4562 transitions. cyclomatic complexity: 2257 Second operand has 18 states, 15 states have (on average 3.2666666666666666) internal successors, (49), 18 states have internal predecessors, (49), 11 states have call successors, (19), 2 states have call predecessors, (19), 6 states have return successors, (20), 9 states have call predecessors, (20), 11 states have call successors, (20) [2022-07-13 03:11:16,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:16,931 INFO L93 Difference]: Finished difference Result 3127 states and 5976 transitions. [2022-07-13 03:11:16,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-07-13 03:11:16,933 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3127 states and 5976 transitions. [2022-07-13 03:11:16,950 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 660 [2022-07-13 03:11:16,981 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3127 states to 3019 states and 5844 transitions. [2022-07-13 03:11:16,981 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 922 [2022-07-13 03:11:16,982 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 922 [2022-07-13 03:11:16,982 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3019 states and 5844 transitions. [2022-07-13 03:11:16,983 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:16,983 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3019 states and 5844 transitions. [2022-07-13 03:11:16,984 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3019 states and 5844 transitions. [2022-07-13 03:11:17,041 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3019 to 2361. [2022-07-13 03:11:17,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2361 states, 1386 states have (on average 1.1125541125541125) internal successors, (1542), 1375 states have internal predecessors, (1542), 797 states have call successors, (797), 183 states have call predecessors, (797), 178 states have return successors, (2332), 802 states have call predecessors, (2332), 797 states have call successors, (2332) [2022-07-13 03:11:17,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2361 states to 2361 states and 4671 transitions. [2022-07-13 03:11:17,056 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2361 states and 4671 transitions. [2022-07-13 03:11:17,057 INFO L374 stractBuchiCegarLoop]: Abstraction has 2361 states and 4671 transitions. [2022-07-13 03:11:17,057 INFO L287 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2022-07-13 03:11:17,057 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2361 states and 4671 transitions. [2022-07-13 03:11:17,065 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 453 [2022-07-13 03:11:17,065 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:17,065 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:17,066 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:17,067 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [36, 36, 24, 24, 24, 24, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:17,067 INFO L752 eck$LassoCheckResult]: Stem: 94551#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 94517#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 94518#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 94550#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 94536#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 94537#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96472#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 94462#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94463#factENTRY ~n := #in~n; 96505#L25 assume ~n <= 0;#res := 1; 96504#factFINAL assume true; 96503#factEXIT >#68#return; 94568#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94449#factENTRY ~n := #in~n; 96556#L25 assume ~n <= 0;#res := 1; 96554#factFINAL assume true; 96553#factEXIT >#70#return; 94448#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94449#factENTRY ~n := #in~n; 96556#L25 assume ~n <= 0;#res := 1; 96554#factFINAL assume true; 96553#factEXIT >#72#return; 94542#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 94543#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 94545#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96638#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94554#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 94555#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96652#factENTRY ~n := #in~n; 96653#L25 assume !(~n <= 0); 96647#L26 call #t~ret0 := fact(~n - 1);< 96648#factENTRY ~n := #in~n; 96693#L25 assume ~n <= 0;#res := 1; 96690#factFINAL assume true; 96688#factEXIT >#66#return; 96686#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96684#factFINAL assume true; 96681#factEXIT >#74#return; 96668#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96670#factENTRY ~n := #in~n; 96671#L25 assume ~n <= 0;#res := 1; 96669#factFINAL assume true; 96667#factEXIT >#76#return; 96631#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96633#factENTRY ~n := #in~n; 96645#L25 assume !(~n <= 0); 96643#L26 call #t~ret0 := fact(~n - 1);< 96664#factENTRY ~n := #in~n; 96660#L25 assume ~n <= 0;#res := 1; 96646#factFINAL assume true; 96640#factEXIT >#66#return; 96639#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96634#factFINAL assume true; 96619#factEXIT >#78#return; 96618#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 96617#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 96614#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95038#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 94548#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 94549#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 95247#L42-3 [2022-07-13 03:11:17,067 INFO L754 eck$LassoCheckResult]: Loop: 95247#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95242#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 95216#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95239#factENTRY ~n := #in~n; 95461#L25 assume !(~n <= 0); 95091#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95273#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95454#factFINAL assume true; 95451#factEXIT >#68#return; 95220#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95240#factENTRY ~n := #in~n; 95241#L25 assume ~n <= 0;#res := 1; 95238#factFINAL assume true; 95182#factEXIT >#70#return; 95225#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95468#factENTRY ~n := #in~n; 95469#L25 assume !(~n <= 0); 95110#L26 call #t~ret0 := fact(~n - 1);< 95128#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95273#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95454#factFINAL assume true; 95451#factEXIT >#72#return; 95441#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 95467#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95465#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95463#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95457#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 95203#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95239#factENTRY ~n := #in~n; 95461#L25 assume !(~n <= 0); 95091#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95270#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95269#factFINAL assume true; 95265#factEXIT >#66#return; 95266#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95455#factFINAL assume true; 95452#factEXIT >#68#return; 95204#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95239#factENTRY ~n := #in~n; 95461#L25 assume !(~n <= 0); 95091#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95130#L25 assume ~n <= 0;#res := 1; 95131#factFINAL assume true; 95088#factEXIT >#66#return; 95101#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95449#factFINAL assume true; 95444#factEXIT >#70#return; 95201#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95237#factENTRY ~n := #in~n; 95459#L25 assume !(~n <= 0); 94527#L26 call #t~ret0 := fact(~n - 1);< 95106#factENTRY ~n := #in~n; 95130#L25 assume ~n <= 0;#res := 1; 95131#factFINAL assume true; 95088#factEXIT >#66#return; 95101#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95449#factFINAL assume true; 95444#factEXIT >#72#return; 95230#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 95634#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95574#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95572#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95567#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 95211#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95239#factENTRY ~n := #in~n; 95461#L25 assume !(~n <= 0); 95091#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95273#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95454#factFINAL assume true; 95451#factEXIT >#68#return; 95187#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95239#factENTRY ~n := #in~n; 95461#L25 assume !(~n <= 0); 95091#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95273#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95454#factFINAL assume true; 95451#factEXIT >#70#return; 95200#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95240#factENTRY ~n := #in~n; 95241#L25 assume ~n <= 0;#res := 1; 95238#factFINAL assume true; 95182#factEXIT >#72#return; 95227#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 95483#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95298#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95299#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95291#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 95060#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95086#factENTRY ~n := #in~n; 95263#L25 assume !(~n <= 0); 95089#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95270#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95269#factFINAL assume true; 95265#factEXIT >#66#return; 95264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95262#factFINAL assume true; 95257#factEXIT >#66#return; 95132#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95107#factFINAL assume true; 95120#factEXIT >#66#return; 95145#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95277#factFINAL assume true; 95251#factEXIT >#74#return; 95045#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95086#factENTRY ~n := #in~n; 95263#L25 assume !(~n <= 0); 95089#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95135#L25 assume !(~n <= 0); 95108#L26 call #t~ret0 := fact(~n - 1);< 95153#factENTRY ~n := #in~n; 95155#L25 assume ~n <= 0;#res := 1; 95154#factFINAL assume true; 95151#factEXIT >#66#return; 95152#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95278#factFINAL assume true; 95271#factEXIT >#66#return; 95270#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95269#factFINAL assume true; 95265#factEXIT >#66#return; 95264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95262#factFINAL assume true; 95257#factEXIT >#66#return; 95132#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95107#factFINAL assume true; 95120#factEXIT >#66#return; 95145#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95277#factFINAL assume true; 95251#factEXIT >#76#return; 95059#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95141#factENTRY ~n := #in~n; 95136#L25 assume !(~n <= 0); 95089#L26 call #t~ret0 := fact(~n - 1);< 95134#factENTRY ~n := #in~n; 95130#L25 assume ~n <= 0;#res := 1; 95131#factFINAL assume true; 95088#factEXIT >#66#return; 95100#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95248#factFINAL assume true; 95243#factEXIT >#78#return; 95041#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 95037#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 94628#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94629#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 94576#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 95281#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 95247#L42-3 [2022-07-13 03:11:17,067 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:17,067 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 7 times [2022-07-13 03:11:17,067 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:17,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1867925826] [2022-07-13 03:11:17,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:17,068 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:17,072 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:17,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1654809129] [2022-07-13 03:11:17,073 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:11:17,073 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:17,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:17,075 INFO L229 MonitoredProcess]: Starting monitored process 89 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:11:17,077 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (89)] Waiting until timeout for monitored process [2022-07-13 03:11:17,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:17,175 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:17,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:17,200 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:17,201 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:17,201 INFO L85 PathProgramCache]: Analyzing trace with hash 538958418, now seen corresponding path program 9 times [2022-07-13 03:11:17,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:17,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1598456043] [2022-07-13 03:11:17,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:17,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:17,208 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:17,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1978566967] [2022-07-13 03:11:17,208 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:17,208 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:17,208 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:17,210 INFO L229 MonitoredProcess]: Starting monitored process 90 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:11:17,211 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (90)] Waiting until timeout for monitored process [2022-07-13 03:11:17,350 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 12 check-sat command(s) [2022-07-13 03:11:17,350 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:17,352 INFO L263 TraceCheckSpWp]: Trace formula consists of 396 conjuncts, 31 conjunts are in the unsatisfiable core [2022-07-13 03:11:17,354 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:17,502 INFO L134 CoverageAnalysis]: Checked inductivity of 3109 backedges. 1071 proven. 237 refuted. 0 times theorem prover too weak. 1801 trivial. 0 not checked. [2022-07-13 03:11:17,502 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:18,335 INFO L134 CoverageAnalysis]: Checked inductivity of 3109 backedges. 743 proven. 281 refuted. 0 times theorem prover too weak. 2085 trivial. 0 not checked. [2022-07-13 03:11:18,336 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:18,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1598456043] [2022-07-13 03:11:18,336 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:18,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1978566967] [2022-07-13 03:11:18,336 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1978566967] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:18,336 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:18,336 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 20] total 27 [2022-07-13 03:11:18,337 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [660512808] [2022-07-13 03:11:18,337 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:18,337 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:18,337 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:18,338 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-07-13 03:11:18,338 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=104, Invalid=598, Unknown=0, NotChecked=0, Total=702 [2022-07-13 03:11:18,338 INFO L87 Difference]: Start difference. First operand 2361 states and 4671 transitions. cyclomatic complexity: 2333 Second operand has 27 states, 21 states have (on average 3.238095238095238) internal successors, (68), 25 states have internal predecessors, (68), 17 states have call successors, (26), 2 states have call predecessors, (26), 9 states have return successors, (29), 16 states have call predecessors, (29), 17 states have call successors, (29) [2022-07-13 03:11:19,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:19,643 INFO L93 Difference]: Finished difference Result 3405 states and 6613 transitions. [2022-07-13 03:11:19,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-07-13 03:11:19,643 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3405 states and 6613 transitions. [2022-07-13 03:11:19,666 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 765 [2022-07-13 03:11:19,705 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3405 states to 3399 states and 6607 transitions. [2022-07-13 03:11:19,705 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1058 [2022-07-13 03:11:19,707 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1061 [2022-07-13 03:11:19,707 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3399 states and 6607 transitions. [2022-07-13 03:11:19,707 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:19,707 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3399 states and 6607 transitions. [2022-07-13 03:11:19,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3399 states and 6607 transitions. [2022-07-13 03:11:19,784 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3399 to 2947. [2022-07-13 03:11:19,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2947 states, 1687 states have (on average 1.121517486662715) internal successors, (1892), 1668 states have internal predecessors, (1892), 1082 states have call successors, (1082), 196 states have call predecessors, (1082), 178 states have return successors, (2898), 1082 states have call predecessors, (2898), 1082 states have call successors, (2898) [2022-07-13 03:11:19,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2947 states to 2947 states and 5872 transitions. [2022-07-13 03:11:19,806 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2947 states and 5872 transitions. [2022-07-13 03:11:19,806 INFO L374 stractBuchiCegarLoop]: Abstraction has 2947 states and 5872 transitions. [2022-07-13 03:11:19,806 INFO L287 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2022-07-13 03:11:19,807 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2947 states and 5872 transitions. [2022-07-13 03:11:19,819 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 667 [2022-07-13 03:11:19,819 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:19,820 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:19,822 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:19,823 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [32, 32, 20, 20, 20, 20, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:19,823 INFO L752 eck$LassoCheckResult]: Stem: 101719#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 101686#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 101687#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 101718#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 101704#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 101705#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 104387#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 101661#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 101662#factENTRY ~n := #in~n; 104370#L25 assume ~n <= 0;#res := 1; 104362#factFINAL assume true; 104359#factEXIT >#68#return; 101744#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 101654#factENTRY ~n := #in~n; 104344#L25 assume ~n <= 0;#res := 1; 104343#factFINAL assume true; 104341#factEXIT >#70#return; 101653#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 101654#factENTRY ~n := #in~n; 104344#L25 assume ~n <= 0;#res := 1; 104343#factFINAL assume true; 104341#factEXIT >#72#return; 104342#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 101713#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 101714#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 104420#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 101722#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 101657#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 104463#factENTRY ~n := #in~n; 104478#L25 assume !(~n <= 0); 101649#L26 call #t~ret0 := fact(~n - 1);< 104474#factENTRY ~n := #in~n; 104579#L25 assume ~n <= 0;#res := 1; 104577#factFINAL assume true; 101648#factEXIT >#66#return; 101650#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 101656#factFINAL assume true; 101658#factEXIT >#74#return; 104426#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 104460#factENTRY ~n := #in~n; 104464#L25 assume ~n <= 0;#res := 1; 104459#factFINAL assume true; 104452#factEXIT >#76#return; 101725#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 104495#factENTRY ~n := #in~n; 104512#L25 assume !(~n <= 0); 104457#L26 call #t~ret0 := fact(~n - 1);< 104504#factENTRY ~n := #in~n; 104465#L25 assume ~n <= 0;#res := 1; 104461#factFINAL assume true; 104454#factEXIT >#66#return; 104449#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 104446#factFINAL assume true; 104436#factEXIT >#78#return; 102341#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 102340#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 102338#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102339#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 102306#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 102307#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 103112#L42-3 [2022-07-13 03:11:19,823 INFO L754 eck$LassoCheckResult]: Loop: 103112#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103021#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 102454#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102993#factENTRY ~n := #in~n; 103002#L25 assume !(~n <= 0); 102373#L26 call #t~ret0 := fact(~n - 1);< 102442#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102413#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102390#factFINAL assume true; 102399#factEXIT >#66#return; 102551#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103075#factFINAL assume true; 103074#factEXIT >#68#return; 101681#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 101663#factENTRY ~n := #in~n; 101668#L25 assume ~n <= 0;#res := 1; 102992#factFINAL assume true; 102977#factEXIT >#70#return; 102485#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102510#factENTRY ~n := #in~n; 102508#L25 assume !(~n <= 0); 102395#L26 call #t~ret0 := fact(~n - 1);< 102444#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102413#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102390#factFINAL assume true; 102399#factEXIT >#66#return; 102549#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102827#factFINAL assume true; 102820#factEXIT >#66#return; 102824#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103087#factFINAL assume true; 103088#factEXIT >#72#return; 103071#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 103083#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 103081#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103079#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103077#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 102481#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102993#factENTRY ~n := #in~n; 103002#L25 assume !(~n <= 0); 102373#L26 call #t~ret0 := fact(~n - 1);< 102442#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102416#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103089#factFINAL assume true; 103085#factEXIT >#68#return; 102451#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102993#factENTRY ~n := #in~n; 103002#L25 assume !(~n <= 0); 102373#L26 call #t~ret0 := fact(~n - 1);< 102442#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102413#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102390#factFINAL assume true; 102399#factEXIT >#66#return; 102551#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103075#factFINAL assume true; 103074#factEXIT >#70#return; 101670#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 101663#factENTRY ~n := #in~n; 101668#L25 assume ~n <= 0;#res := 1; 102992#factFINAL assume true; 102977#factEXIT >#72#return; 102978#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 103240#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 103238#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103228#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102994#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 102459#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102993#factENTRY ~n := #in~n; 103002#L25 assume !(~n <= 0); 102373#L26 call #t~ret0 := fact(~n - 1);< 102442#factENTRY ~n := #in~n; 102411#L25 assume ~n <= 0;#res := 1; 102412#factFINAL assume true; 102369#factEXIT >#66#return; 102381#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103005#factFINAL assume true; 102995#factEXIT >#68#return; 102427#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 101660#factENTRY ~n := #in~n; 103042#L25 assume !(~n <= 0); 102370#L26 call #t~ret0 := fact(~n - 1);< 102414#factENTRY ~n := #in~n; 102411#L25 assume ~n <= 0;#res := 1; 102412#factFINAL assume true; 102369#factEXIT >#66#return; 102381#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103005#factFINAL assume true; 102995#factEXIT >#70#return; 101677#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 101663#factENTRY ~n := #in~n; 101668#L25 assume ~n <= 0;#res := 1; 102992#factFINAL assume true; 102977#factEXIT >#72#return; 102976#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 102975#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 102974#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102973#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102971#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 102588#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 101640#factENTRY ~n := #in~n; 102681#L25 assume !(~n <= 0); 102372#L26 call #t~ret0 := fact(~n - 1);< 102442#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102440#L25 assume !(~n <= 0); 102396#L26 call #t~ret0 := fact(~n - 1);< 102424#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102413#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102390#factFINAL assume true; 102399#factEXIT >#66#return; 102552#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102963#factFINAL assume true; 102957#factEXIT >#74#return; 102576#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102680#factENTRY ~n := #in~n; 102961#L25 assume !(~n <= 0); 101696#L26 call #t~ret0 := fact(~n - 1);< 102535#factENTRY ~n := #in~n; 102672#L25 assume !(~n <= 0); 101692#L26 call #t~ret0 := fact(~n - 1);< 101698#factENTRY ~n := #in~n; 102441#L25 assume ~n <= 0;#res := 1; 102439#factFINAL assume true; 102422#factEXIT >#66#return; 102423#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102554#factFINAL assume true; 102415#factEXIT >#66#return; 102420#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102666#factFINAL assume true; 102571#factEXIT >#76#return; 101732#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 101750#factENTRY ~n := #in~n; 101731#L25 assume !(~n <= 0); 101735#L26 call #t~ret0 := fact(~n - 1);< 102414#factENTRY ~n := #in~n; 102411#L25 assume ~n <= 0;#res := 1; 102412#factFINAL assume true; 102369#factEXIT >#66#return; 102383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102958#factFINAL assume true; 102950#factEXIT >#78#return; 102661#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 102956#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 102955#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102954#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 102934#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 103116#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 103112#L42-3 [2022-07-13 03:11:19,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:19,824 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 8 times [2022-07-13 03:11:19,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:19,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1106695394] [2022-07-13 03:11:19,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:19,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:19,830 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:19,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2022597722] [2022-07-13 03:11:19,830 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:19,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:19,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:19,835 INFO L229 MonitoredProcess]: Starting monitored process 91 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:11:19,847 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (91)] Waiting until timeout for monitored process [2022-07-13 03:11:19,916 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:19,916 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:19,916 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:19,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:19,943 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:19,943 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:19,943 INFO L85 PathProgramCache]: Analyzing trace with hash -114691054, now seen corresponding path program 10 times [2022-07-13 03:11:19,943 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:19,943 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1189013475] [2022-07-13 03:11:19,943 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:19,944 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:19,953 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:19,954 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [149301527] [2022-07-13 03:11:19,954 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:19,954 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:19,954 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:19,956 INFO L229 MonitoredProcess]: Starting monitored process 92 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:11:19,957 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (92)] Waiting until timeout for monitored process [2022-07-13 03:11:20,066 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:20,066 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:20,067 INFO L263 TraceCheckSpWp]: Trace formula consists of 452 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-13 03:11:20,070 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:20,188 INFO L134 CoverageAnalysis]: Checked inductivity of 2401 backedges. 1305 proven. 130 refuted. 0 times theorem prover too weak. 966 trivial. 0 not checked. [2022-07-13 03:11:20,188 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:20,784 INFO L134 CoverageAnalysis]: Checked inductivity of 2401 backedges. 119 proven. 590 refuted. 0 times theorem prover too weak. 1692 trivial. 0 not checked. [2022-07-13 03:11:20,785 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:20,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1189013475] [2022-07-13 03:11:20,785 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:20,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [149301527] [2022-07-13 03:11:20,785 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [149301527] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:20,785 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:20,785 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 17] total 20 [2022-07-13 03:11:20,785 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1167143383] [2022-07-13 03:11:20,785 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:20,786 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:20,786 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:20,786 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-07-13 03:11:20,786 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=317, Unknown=0, NotChecked=0, Total=380 [2022-07-13 03:11:20,786 INFO L87 Difference]: Start difference. First operand 2947 states and 5872 transitions. cyclomatic complexity: 2948 Second operand has 20 states, 17 states have (on average 3.411764705882353) internal successors, (58), 20 states have internal predecessors, (58), 13 states have call successors, (26), 2 states have call predecessors, (26), 8 states have return successors, (28), 8 states have call predecessors, (28), 13 states have call successors, (28) [2022-07-13 03:11:21,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:21,487 INFO L93 Difference]: Finished difference Result 3427 states and 6726 transitions. [2022-07-13 03:11:21,487 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-07-13 03:11:21,488 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3427 states and 6726 transitions. [2022-07-13 03:11:21,512 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 774 [2022-07-13 03:11:21,541 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3427 states to 2827 states and 5405 transitions. [2022-07-13 03:11:21,542 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1037 [2022-07-13 03:11:21,543 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1039 [2022-07-13 03:11:21,543 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2827 states and 5405 transitions. [2022-07-13 03:11:21,544 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:21,544 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2827 states and 5405 transitions. [2022-07-13 03:11:21,545 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2827 states and 5405 transitions. [2022-07-13 03:11:21,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2827 to 2660. [2022-07-13 03:11:21,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2660 states, 1539 states have (on average 1.1228070175438596) internal successors, (1728), 1523 states have internal predecessors, (1728), 947 states have call successors, (947), 203 states have call predecessors, (947), 174 states have return successors, (2419), 933 states have call predecessors, (2419), 947 states have call successors, (2419) [2022-07-13 03:11:21,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2660 states to 2660 states and 5094 transitions. [2022-07-13 03:11:21,620 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2660 states and 5094 transitions. [2022-07-13 03:11:21,620 INFO L374 stractBuchiCegarLoop]: Abstraction has 2660 states and 5094 transitions. [2022-07-13 03:11:21,620 INFO L287 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2022-07-13 03:11:21,620 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2660 states and 5094 transitions. [2022-07-13 03:11:21,631 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 717 [2022-07-13 03:11:21,631 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:21,631 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:21,632 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:21,632 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [24, 24, 12, 12, 12, 12, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:21,633 INFO L752 eck$LassoCheckResult]: Stem: 109417#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 109380#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 109381#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 109416#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 109400#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 109401#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 111698#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 109359#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109360#factENTRY ~n := #in~n; 111712#L25 assume ~n <= 0;#res := 1; 111711#factFINAL assume true; 111709#factEXIT >#68#return; 109434#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109354#factENTRY ~n := #in~n; 111724#L25 assume ~n <= 0;#res := 1; 111723#factFINAL assume true; 111719#factEXIT >#70#return; 109353#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109354#factENTRY ~n := #in~n; 111724#L25 assume ~n <= 0;#res := 1; 111723#factFINAL assume true; 111719#factEXIT >#72#return; 111720#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 109410#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109411#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109430#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109419#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 109420#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 111775#factENTRY ~n := #in~n; 111790#L25 assume !(~n <= 0); 111782#L26 call #t~ret0 := fact(~n - 1);< 111786#factENTRY ~n := #in~n; 111818#L25 assume ~n <= 0;#res := 1; 111911#factFINAL assume true; 111906#factEXIT >#66#return; 111903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111902#factFINAL assume true; 111898#factEXIT >#74#return; 111899#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109438#factENTRY ~n := #in~n; 111910#L25 assume ~n <= 0;#res := 1; 111905#factFINAL assume true; 111900#factEXIT >#76#return; 109424#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 111823#factENTRY ~n := #in~n; 111813#L25 assume !(~n <= 0); 109347#L26 call #t~ret0 := fact(~n - 1);< 111793#factENTRY ~n := #in~n; 111804#L25 assume ~n <= 0;#res := 1; 111802#factFINAL assume true; 111791#factEXIT >#66#return; 111787#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111778#factFINAL assume true; 109945#factEXIT >#78#return; 109943#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 109944#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 111765#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109935#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 109932#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 109933#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 110549#L42-3 [2022-07-13 03:11:21,633 INFO L754 eck$LassoCheckResult]: Loop: 110549#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 110546#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 109274#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109358#factENTRY ~n := #in~n; 110548#L25 assume !(~n <= 0); 110055#L26 call #t~ret0 := fact(~n - 1);< 110126#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#68#return; 109364#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109361#factENTRY ~n := #in~n; 109376#L25 assume ~n <= 0;#res := 1; 109431#factFINAL assume true; 110530#factEXIT >#70#return; 109293#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109352#factENTRY ~n := #in~n; 110318#L25 assume !(~n <= 0); 110055#L26 call #t~ret0 := fact(~n - 1);< 110126#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#72#return; 110658#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 110681#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 110680#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 110679#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 110678#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 110104#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 110525#factENTRY ~n := #in~n; 110317#L25 assume !(~n <= 0); 110056#L26 call #t~ret0 := fact(~n - 1);< 110092#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#68#return; 110098#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 110525#factENTRY ~n := #in~n; 110317#L25 assume !(~n <= 0); 110056#L26 call #t~ret0 := fact(~n - 1);< 110092#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#70#return; 109362#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109361#factENTRY ~n := #in~n; 109376#L25 assume ~n <= 0;#res := 1; 109431#factFINAL assume true; 110530#factEXIT >#72#return; 110541#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 110677#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 110676#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 110674#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 110661#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 110106#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 110525#factENTRY ~n := #in~n; 110317#L25 assume !(~n <= 0); 110056#L26 call #t~ret0 := fact(~n - 1);< 110092#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#68#return; 110110#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 110525#factENTRY ~n := #in~n; 110317#L25 assume !(~n <= 0); 110056#L26 call #t~ret0 := fact(~n - 1);< 110092#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110660#factFINAL assume true; 110657#factEXIT >#70#return; 109373#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109361#factENTRY ~n := #in~n; 109376#L25 assume ~n <= 0;#res := 1; 109431#factFINAL assume true; 110530#factEXIT >#72#return; 110544#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 110673#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 110672#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 110635#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 110636#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 109990#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 110131#factENTRY ~n := #in~n; 110132#L25 assume !(~n <= 0); 110049#L26 call #t~ret0 := fact(~n - 1);< 110126#factENTRY ~n := #in~n; 110122#L25 assume !(~n <= 0); 110078#L26 call #t~ret0 := fact(~n - 1);< 110120#factENTRY ~n := #in~n; 110122#L25 assume !(~n <= 0); 110078#L26 call #t~ret0 := fact(~n - 1);< 110120#factENTRY ~n := #in~n; 110122#L25 assume !(~n <= 0); 110078#L26 call #t~ret0 := fact(~n - 1);< 110120#factENTRY ~n := #in~n; 110123#L25 assume ~n <= 0;#res := 1; 110121#factFINAL assume true; 110118#factEXIT >#66#return; 110119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110287#factFINAL assume true; 110111#factEXIT >#66#return; 110090#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110091#factFINAL assume true; 110277#factEXIT >#66#return; 110279#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110397#factFINAL assume true; 110308#factEXIT >#66#return; 110047#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110044#factFINAL assume true; 109960#factEXIT >#74#return; 110041#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 110046#factENTRY ~n := #in~n; 110168#L25 assume !(~n <= 0); 109387#L26 call #t~ret0 := fact(~n - 1);< 110306#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110622#factFINAL assume true; 110620#factEXIT >#76#return; 109972#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 110137#factENTRY ~n := #in~n; 110128#L25 assume !(~n <= 0); 110049#L26 call #t~ret0 := fact(~n - 1);< 110126#factENTRY ~n := #in~n; 110088#L25 assume ~n <= 0;#res := 1; 110089#factFINAL assume true; 110048#factEXIT >#66#return; 110061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110622#factFINAL assume true; 110620#factEXIT >#78#return; 110028#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 110611#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 110601#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 110560#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 110555#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 110552#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 110549#L42-3 [2022-07-13 03:11:21,633 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:21,634 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 9 times [2022-07-13 03:11:21,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:21,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1378835149] [2022-07-13 03:11:21,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:21,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:21,646 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:21,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1521263034] [2022-07-13 03:11:21,647 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:21,647 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:21,647 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:21,652 INFO L229 MonitoredProcess]: Starting monitored process 93 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:11:21,653 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (93)] Waiting until timeout for monitored process [2022-07-13 03:11:21,736 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-07-13 03:11:21,736 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:21,736 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:21,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:21,763 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:21,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:21,764 INFO L85 PathProgramCache]: Analyzing trace with hash 60401874, now seen corresponding path program 11 times [2022-07-13 03:11:21,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:21,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1568829686] [2022-07-13 03:11:21,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:21,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:21,771 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:21,771 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1600491060] [2022-07-13 03:11:21,771 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:21,771 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:21,771 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:21,773 INFO L229 MonitoredProcess]: Starting monitored process 94 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:11:21,774 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (94)] Waiting until timeout for monitored process [2022-07-13 03:11:21,874 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2022-07-13 03:11:21,874 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:21,875 INFO L263 TraceCheckSpWp]: Trace formula consists of 284 conjuncts, 13 conjunts are in the unsatisfiable core [2022-07-13 03:11:21,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:21,973 INFO L134 CoverageAnalysis]: Checked inductivity of 1273 backedges. 766 proven. 24 refuted. 0 times theorem prover too weak. 483 trivial. 0 not checked. [2022-07-13 03:11:21,973 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:22,207 INFO L134 CoverageAnalysis]: Checked inductivity of 1273 backedges. 134 proven. 139 refuted. 0 times theorem prover too weak. 1000 trivial. 0 not checked. [2022-07-13 03:11:22,207 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:22,207 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1568829686] [2022-07-13 03:11:22,207 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:22,207 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1600491060] [2022-07-13 03:11:22,207 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1600491060] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:22,207 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:22,208 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 15 [2022-07-13 03:11:22,208 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [243169217] [2022-07-13 03:11:22,208 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:22,208 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:22,208 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:22,208 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-07-13 03:11:22,208 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-07-13 03:11:22,208 INFO L87 Difference]: Start difference. First operand 2660 states and 5094 transitions. cyclomatic complexity: 2460 Second operand has 15 states, 12 states have (on average 4.0) internal successors, (48), 15 states have internal predecessors, (48), 9 states have call successors, (23), 2 states have call predecessors, (23), 5 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-07-13 03:11:22,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:22,610 INFO L93 Difference]: Finished difference Result 2393 states and 4392 transitions. [2022-07-13 03:11:22,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-07-13 03:11:22,612 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2393 states and 4392 transitions. [2022-07-13 03:11:22,625 INFO L131 ngComponentsAnalysis]: Automaton has 15 accepting balls. 594 [2022-07-13 03:11:22,642 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2393 states to 2081 states and 3916 transitions. [2022-07-13 03:11:22,642 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 892 [2022-07-13 03:11:22,643 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 892 [2022-07-13 03:11:22,643 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2081 states and 3916 transitions. [2022-07-13 03:11:22,644 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:22,644 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2081 states and 3916 transitions. [2022-07-13 03:11:22,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2081 states and 3916 transitions. [2022-07-13 03:11:22,683 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2081 to 1969. [2022-07-13 03:11:22,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1969 states, 1144 states have (on average 1.1101398601398602) internal successors, (1270), 1122 states have internal predecessors, (1270), 687 states have call successors, (687), 164 states have call predecessors, (687), 138 states have return successors, (1741), 682 states have call predecessors, (1741), 687 states have call successors, (1741) [2022-07-13 03:11:22,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1969 states to 1969 states and 3698 transitions. [2022-07-13 03:11:22,695 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1969 states and 3698 transitions. [2022-07-13 03:11:22,695 INFO L374 stractBuchiCegarLoop]: Abstraction has 1969 states and 3698 transitions. [2022-07-13 03:11:22,696 INFO L287 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2022-07-13 03:11:22,696 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1969 states and 3698 transitions. [2022-07-13 03:11:22,703 INFO L131 ngComponentsAnalysis]: Automaton has 15 accepting balls. 568 [2022-07-13 03:11:22,703 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:22,703 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:22,705 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:22,705 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [35, 35, 23, 23, 23, 23, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:22,705 INFO L752 eck$LassoCheckResult]: Stem: 115397#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 115366#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 115367#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 115396#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 115383#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115384#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116968#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 115300#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115301#factENTRY ~n := #in~n; 116992#L25 assume ~n <= 0;#res := 1; 116991#factFINAL assume true; 116990#factEXIT >#68#return; 115407#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115297#factENTRY ~n := #in~n; 116989#L25 assume ~n <= 0;#res := 1; 116988#factFINAL assume true; 116987#factEXIT >#70#return; 115296#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115297#factENTRY ~n := #in~n; 116989#L25 assume ~n <= 0;#res := 1; 116988#factFINAL assume true; 116987#factEXIT >#72#return; 115389#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 115390#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115392#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117077#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115399#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 115400#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117095#factENTRY ~n := #in~n; 117096#L25 assume !(~n <= 0); 117092#L26 call #t~ret0 := fact(~n - 1);< 117093#factENTRY ~n := #in~n; 117129#L25 assume ~n <= 0;#res := 1; 117160#factFINAL assume true; 117159#factEXIT >#66#return; 117158#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117157#factFINAL assume true; 117154#factEXIT >#74#return; 117151#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117152#factENTRY ~n := #in~n; 117155#L25 assume ~n <= 0;#res := 1; 117153#factFINAL assume true; 117150#factEXIT >#76#return; 117066#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117104#factENTRY ~n := #in~n; 117126#L25 assume !(~n <= 0); 117081#L26 call #t~ret0 := fact(~n - 1);< 117119#factENTRY ~n := #in~n; 117115#L25 assume ~n <= 0;#res := 1; 117116#factFINAL assume true; 117111#factEXIT >#66#return; 117109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117110#factFINAL assume true; 117105#factEXIT >#78#return; 117060#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 117059#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 115823#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115784#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 115733#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 115719#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115720#L42-3 [2022-07-13 03:11:22,706 INFO L754 eck$LassoCheckResult]: Loop: 115720#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116200#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 116083#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 116172#factENTRY ~n := #in~n; 116208#L25 assume !(~n <= 0); 115926#L26 call #t~ret0 := fact(~n - 1);< 115968#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116026#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116194#factFINAL assume true; 116173#factEXIT >#68#return; 116091#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 116170#factENTRY ~n := #in~n; 116198#L25 assume ~n <= 0;#res := 1; 116171#factFINAL assume true; 116079#factEXIT >#70#return; 116151#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 116020#factENTRY ~n := #in~n; 116203#L25 assume !(~n <= 0); 115921#L26 call #t~ret0 := fact(~n - 1);< 115953#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116027#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116069#factFINAL assume true; 116064#factEXIT >#66#return; 116067#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116224#factFINAL assume true; 116215#factEXIT >#66#return; 115934#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115941#factFINAL assume true; 115910#factEXIT >#66#return; 115935#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116386#factFINAL assume true; 116387#factEXIT >#72#return; 116184#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 116244#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 116243#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116242#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116241#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 116103#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 116172#factENTRY ~n := #in~n; 116208#L25 assume !(~n <= 0); 115926#L26 call #t~ret0 := fact(~n - 1);< 115968#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116026#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116194#factFINAL assume true; 116173#factEXIT >#68#return; 116123#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 116201#factENTRY ~n := #in~n; 116197#L25 assume !(~n <= 0); 115373#L26 call #t~ret0 := fact(~n - 1);< 116040#factENTRY ~n := #in~n; 116196#L25 assume !(~n <= 0); 115372#L26 call #t~ret0 := fact(~n - 1);< 115377#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116026#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116194#factFINAL assume true; 116173#factEXIT >#70#return; 116081#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 116170#factENTRY ~n := #in~n; 116198#L25 assume ~n <= 0;#res := 1; 116171#factFINAL assume true; 116079#factEXIT >#72#return; 116145#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 116284#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 116357#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116355#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116346#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 116071#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 116172#factENTRY ~n := #in~n; 116208#L25 assume !(~n <= 0); 115926#L26 call #t~ret0 := fact(~n - 1);< 115968#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116026#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116194#factFINAL assume true; 116173#factEXIT >#68#return; 116180#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 116193#factENTRY ~n := #in~n; 116206#L25 assume !(~n <= 0); 115373#L26 call #t~ret0 := fact(~n - 1);< 116040#factENTRY ~n := #in~n; 116196#L25 assume !(~n <= 0); 115372#L26 call #t~ret0 := fact(~n - 1);< 115377#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116026#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116194#factFINAL assume true; 116173#factEXIT >#70#return; 116133#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 116170#factENTRY ~n := #in~n; 116198#L25 assume ~n <= 0;#res := 1; 116171#factFINAL assume true; 116079#factEXIT >#72#return; 116078#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 116077#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 116076#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116075#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116070#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 115837#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115906#factENTRY ~n := #in~n; 116225#L25 assume !(~n <= 0); 115912#L26 call #t~ret0 := fact(~n - 1);< 115968#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 115951#L25 assume !(~n <= 0); 115920#L26 call #t~ret0 := fact(~n - 1);< 116004#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116027#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116069#factFINAL assume true; 116064#factEXIT >#66#return; 116067#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116224#factFINAL assume true; 116215#factEXIT >#66#return; 115934#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115941#factFINAL assume true; 115910#factEXIT >#66#return; 115909#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115905#factFINAL assume true; 115828#factEXIT >#74#return; 115894#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115908#factENTRY ~n := #in~n; 116226#L25 assume !(~n <= 0); 115375#L26 call #t~ret0 := fact(~n - 1);< 116040#factENTRY ~n := #in~n; 116196#L25 assume !(~n <= 0); 115372#L26 call #t~ret0 := fact(~n - 1);< 115377#factENTRY ~n := #in~n; 116007#L25 assume ~n <= 0;#res := 1; 116005#factFINAL assume true; 116003#factEXIT >#66#return; 116002#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115986#factFINAL assume true; 115987#factEXIT >#66#return; 116022#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116060#factFINAL assume true; 116059#factEXIT >#76#return; 115862#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115984#factENTRY ~n := #in~n; 115969#L25 assume !(~n <= 0); 115912#L26 call #t~ret0 := fact(~n - 1);< 115968#factENTRY ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115967#factFINAL assume true; 115957#factEXIT >#66#return; 115962#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116209#factFINAL assume true; 116205#factEXIT >#78#return; 115891#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 116202#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 116199#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116072#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 116073#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 116204#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115720#L42-3 [2022-07-13 03:11:22,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:22,707 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 10 times [2022-07-13 03:11:22,707 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:22,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [637795177] [2022-07-13 03:11:22,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:22,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:22,713 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:22,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1351034919] [2022-07-13 03:11:22,713 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:22,713 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:22,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:22,719 INFO L229 MonitoredProcess]: Starting monitored process 95 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:11:22,743 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (95)] Waiting until timeout for monitored process [2022-07-13 03:11:22,799 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:22,799 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:22,799 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:22,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:22,823 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:22,823 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:22,823 INFO L85 PathProgramCache]: Analyzing trace with hash -1242625638, now seen corresponding path program 12 times [2022-07-13 03:11:22,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:22,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1380279366] [2022-07-13 03:11:22,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:22,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:22,829 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:22,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1861149140] [2022-07-13 03:11:22,830 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:11:22,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:22,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:22,831 INFO L229 MonitoredProcess]: Starting monitored process 96 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:11:22,832 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (96)] Waiting until timeout for monitored process [2022-07-13 03:11:22,965 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 19 check-sat command(s) [2022-07-13 03:11:22,965 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:22,967 INFO L263 TraceCheckSpWp]: Trace formula consists of 399 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-13 03:11:22,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:23,149 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 1168 proven. 81 refuted. 0 times theorem prover too weak. 1674 trivial. 0 not checked. [2022-07-13 03:11:23,149 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:24,157 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 860 proven. 163 refuted. 0 times theorem prover too weak. 1900 trivial. 0 not checked. [2022-07-13 03:11:24,157 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:24,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1380279366] [2022-07-13 03:11:24,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:24,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1861149140] [2022-07-13 03:11:24,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1861149140] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:24,158 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:24,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 22] total 28 [2022-07-13 03:11:24,158 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [948481801] [2022-07-13 03:11:24,159 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:24,159 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:24,159 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:24,159 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-07-13 03:11:24,160 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=651, Unknown=0, NotChecked=0, Total=756 [2022-07-13 03:11:24,160 INFO L87 Difference]: Start difference. First operand 1969 states and 3698 transitions. cyclomatic complexity: 1757 Second operand has 28 states, 24 states have (on average 2.9166666666666665) internal successors, (70), 26 states have internal predecessors, (70), 17 states have call successors, (26), 2 states have call predecessors, (26), 10 states have return successors, (30), 13 states have call predecessors, (30), 17 states have call successors, (30) [2022-07-13 03:11:26,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:26,065 INFO L93 Difference]: Finished difference Result 3246 states and 5709 transitions. [2022-07-13 03:11:26,065 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 51 states. [2022-07-13 03:11:26,065 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3246 states and 5709 transitions. [2022-07-13 03:11:26,085 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 1122 [2022-07-13 03:11:26,112 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3246 states to 3067 states and 5449 transitions. [2022-07-13 03:11:26,113 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1492 [2022-07-13 03:11:26,115 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1492 [2022-07-13 03:11:26,115 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3067 states and 5449 transitions. [2022-07-13 03:11:26,115 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:26,115 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3067 states and 5449 transitions. [2022-07-13 03:11:26,117 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3067 states and 5449 transitions. [2022-07-13 03:11:26,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3067 to 1927. [2022-07-13 03:11:26,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1927 states, 1176 states have (on average 1.1224489795918366) internal successors, (1320), 1154 states have internal predecessors, (1320), 615 states have call successors, (615), 159 states have call predecessors, (615), 136 states have return successors, (1555), 613 states have call predecessors, (1555), 615 states have call successors, (1555) [2022-07-13 03:11:26,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1927 states to 1927 states and 3490 transitions. [2022-07-13 03:11:26,171 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1927 states and 3490 transitions. [2022-07-13 03:11:26,171 INFO L374 stractBuchiCegarLoop]: Abstraction has 1927 states and 3490 transitions. [2022-07-13 03:11:26,171 INFO L287 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2022-07-13 03:11:26,171 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1927 states and 3490 transitions. [2022-07-13 03:11:26,179 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 548 [2022-07-13 03:11:26,179 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:26,179 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:26,180 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:26,180 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:26,180 INFO L752 eck$LassoCheckResult]: Stem: 122006#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 121967#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 121968#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 122005#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 122030#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 122087#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 122086#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 122047#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 122058#factENTRY ~n := #in~n; 122046#L25 assume ~n <= 0;#res := 1; 122048#factFINAL assume true; 122452#factEXIT >#68#return; 122023#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 122024#factENTRY ~n := #in~n; 122516#L25 assume ~n <= 0;#res := 1; 122515#factFINAL assume true; 122512#factEXIT >#70#return; 122513#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 122024#factENTRY ~n := #in~n; 122516#L25 assume ~n <= 0;#res := 1; 122515#factFINAL assume true; 122512#factEXIT >#72#return; 122514#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 122000#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 122001#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 122927#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 122008#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 122009#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 122917#factENTRY ~n := #in~n; 122940#L25 assume !(~n <= 0); 122932#L26 call #t~ret0 := fact(~n - 1);< 122936#factENTRY ~n := #in~n; 122954#L25 assume ~n <= 0;#res := 1; 122975#factFINAL assume true; 122974#factEXIT >#66#return; 122973#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 122972#factFINAL assume true; 122971#factEXIT >#74#return; 122961#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 122963#factENTRY ~n := #in~n; 122969#L25 assume ~n <= 0;#res := 1; 122964#factFINAL assume true; 122960#factEXIT >#76#return; 122894#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 122919#factENTRY ~n := #in~n; 122987#L25 assume !(~n <= 0); 122923#L26 call #t~ret0 := fact(~n - 1);< 122924#factENTRY ~n := #in~n; 122929#L25 assume ~n <= 0;#res := 1; 122925#factFINAL assume true; 122921#factEXIT >#66#return; 122920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 122918#factFINAL assume true; 122890#factEXIT >#78#return; 122889#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 122888#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 122887#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 122522#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 122517#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 122496#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 122497#L42-3 [2022-07-13 03:11:26,181 INFO L754 eck$LassoCheckResult]: Loop: 122497#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123396#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 123278#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123361#factENTRY ~n := #in~n; 123394#L25 assume !(~n <= 0); 123170#L26 call #t~ret0 := fact(~n - 1);< 123168#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#68#return; 123335#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123364#factENTRY ~n := #in~n; 123391#L25 assume ~n <= 0;#res := 1; 123363#factFINAL assume true; 123277#factEXIT >#70#return; 123341#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123187#factENTRY ~n := #in~n; 123427#L25 assume !(~n <= 0); 123175#L26 call #t~ret0 := fact(~n - 1);< 123177#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#72#return; 123384#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 123587#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 123583#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123582#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123580#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 123315#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123361#factENTRY ~n := #in~n; 123394#L25 assume !(~n <= 0); 123170#L26 call #t~ret0 := fact(~n - 1);< 123168#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#68#return; 123286#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123362#factENTRY ~n := #in~n; 123395#L25 assume !(~n <= 0); 123157#L26 call #t~ret0 := fact(~n - 1);< 123138#factENTRY ~n := #in~n; 123159#L25 assume ~n <= 0;#res := 1; 123512#factFINAL assume true; 123505#factEXIT >#66#return; 123510#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123585#factFINAL assume true; 123574#factEXIT >#70#return; 123309#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123362#factENTRY ~n := #in~n; 123395#L25 assume !(~n <= 0); 123157#L26 call #t~ret0 := fact(~n - 1);< 123138#factENTRY ~n := #in~n; 123158#L25 assume !(~n <= 0); 123444#L26 call #t~ret0 := fact(~n - 1);< 123445#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#72#return; 123354#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 123731#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 123730#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123728#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123457#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 123287#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123361#factENTRY ~n := #in~n; 123394#L25 assume !(~n <= 0); 123170#L26 call #t~ret0 := fact(~n - 1);< 123168#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#68#return; 123575#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123142#factENTRY ~n := #in~n; 123593#L25 assume !(~n <= 0); 123157#L26 call #t~ret0 := fact(~n - 1);< 123138#factENTRY ~n := #in~n; 123158#L25 assume !(~n <= 0); 123444#L26 call #t~ret0 := fact(~n - 1);< 123445#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123595#factFINAL assume true; 123591#factEXIT >#70#return; 123302#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123364#factENTRY ~n := #in~n; 123391#L25 assume ~n <= 0;#res := 1; 123363#factFINAL assume true; 123277#factEXIT >#72#return; 123351#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 123657#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 123655#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123653#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123649#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 123246#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123572#factENTRY ~n := #in~n; 123573#L25 assume !(~n <= 0); 123172#L26 call #t~ret0 := fact(~n - 1);< 123168#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123167#L25 assume !(~n <= 0); 123165#L26 call #t~ret0 := fact(~n - 1);< 123164#factENTRY ~n := #in~n; 123166#L25 assume ~n <= 0;#res := 1; 123448#factFINAL assume true; 123443#factEXIT >#66#return; 123441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123440#factFINAL assume true; 123432#factEXIT >#66#return; 123430#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123415#factFINAL assume true; 123407#factEXIT >#66#return; 123411#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123648#factFINAL assume true; 123647#factEXIT >#74#return; 123107#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123100#factENTRY ~n := #in~n; 123109#L25 assume !(~n <= 0); 123155#L26 call #t~ret0 := fact(~n - 1);< 123138#factENTRY ~n := #in~n; 123159#L25 assume ~n <= 0;#res := 1; 123512#factFINAL assume true; 123505#factEXIT >#66#return; 123508#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123641#factFINAL assume true; 123627#factEXIT >#76#return; 123633#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123640#factENTRY ~n := #in~n; 123724#L25 assume !(~n <= 0); 123506#L26 call #t~ret0 := fact(~n - 1);< 121976#factENTRY ~n := #in~n; 123159#L25 assume ~n <= 0;#res := 1; 123512#factFINAL assume true; 123505#factEXIT >#66#return; 123508#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123641#factFINAL assume true; 123627#factEXIT >#78#return; 123639#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 123656#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 123654#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123651#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 123612#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 123688#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 122497#L42-3 [2022-07-13 03:11:26,181 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:26,181 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 11 times [2022-07-13 03:11:26,181 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:26,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [646889612] [2022-07-13 03:11:26,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:26,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:26,187 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:26,187 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1899265032] [2022-07-13 03:11:26,187 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:26,187 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:26,187 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:26,189 INFO L229 MonitoredProcess]: Starting monitored process 97 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:11:26,190 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (97)] Waiting until timeout for monitored process [2022-07-13 03:11:26,279 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2022-07-13 03:11:26,279 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:26,279 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:26,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:26,306 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:26,306 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:26,307 INFO L85 PathProgramCache]: Analyzing trace with hash 343274562, now seen corresponding path program 13 times [2022-07-13 03:11:26,307 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:26,307 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [617362649] [2022-07-13 03:11:26,307 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:26,307 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:26,313 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:26,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [443083136] [2022-07-13 03:11:26,313 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:11:26,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:26,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:26,319 INFO L229 MonitoredProcess]: Starting monitored process 98 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:11:26,342 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (98)] Waiting until timeout for monitored process [2022-07-13 03:11:26,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:26,435 INFO L263 TraceCheckSpWp]: Trace formula consists of 428 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:11:26,438 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:26,592 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 1212 proven. 105 refuted. 0 times theorem prover too weak. 766 trivial. 0 not checked. [2022-07-13 03:11:26,592 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:27,096 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 150 proven. 407 refuted. 0 times theorem prover too weak. 1526 trivial. 0 not checked. [2022-07-13 03:11:27,096 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:27,096 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [617362649] [2022-07-13 03:11:27,097 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:27,097 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [443083136] [2022-07-13 03:11:27,097 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [443083136] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:27,097 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:27,097 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 16] total 19 [2022-07-13 03:11:27,097 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1805317787] [2022-07-13 03:11:27,097 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:27,098 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:27,098 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:27,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-07-13 03:11:27,098 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=285, Unknown=0, NotChecked=0, Total=342 [2022-07-13 03:11:27,098 INFO L87 Difference]: Start difference. First operand 1927 states and 3490 transitions. cyclomatic complexity: 1592 Second operand has 19 states, 16 states have (on average 3.375) internal successors, (54), 19 states have internal predecessors, (54), 11 states have call successors, (29), 2 states have call predecessors, (29), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-07-13 03:11:27,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:27,611 INFO L93 Difference]: Finished difference Result 2323 states and 4055 transitions. [2022-07-13 03:11:27,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-07-13 03:11:27,612 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2323 states and 4055 transitions. [2022-07-13 03:11:27,625 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 670 [2022-07-13 03:11:27,641 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2323 states to 2296 states and 4014 transitions. [2022-07-13 03:11:27,642 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1071 [2022-07-13 03:11:27,643 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1071 [2022-07-13 03:11:27,643 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2296 states and 4014 transitions. [2022-07-13 03:11:27,643 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:27,644 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2296 states and 4014 transitions. [2022-07-13 03:11:27,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2296 states and 4014 transitions. [2022-07-13 03:11:27,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2296 to 1994. [2022-07-13 03:11:27,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1994 states, 1218 states have (on average 1.1174055829228242) internal successors, (1361), 1191 states have internal predecessors, (1361), 643 states have call successors, (643), 163 states have call predecessors, (643), 133 states have return successors, (1598), 639 states have call predecessors, (1598), 643 states have call successors, (1598) [2022-07-13 03:11:27,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1994 states to 1994 states and 3602 transitions. [2022-07-13 03:11:27,695 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1994 states and 3602 transitions. [2022-07-13 03:11:27,695 INFO L374 stractBuchiCegarLoop]: Abstraction has 1994 states and 3602 transitions. [2022-07-13 03:11:27,696 INFO L287 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2022-07-13 03:11:27,696 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1994 states and 3602 transitions. [2022-07-13 03:11:27,703 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 560 [2022-07-13 03:11:27,703 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:27,703 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:27,704 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:27,704 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:27,705 INFO L752 eck$LassoCheckResult]: Stem: 127443#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 127409#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 127410#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 127442#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 127467#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 127952#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 127950#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 127947#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 127948#factENTRY ~n := #in~n; 127951#L25 assume ~n <= 0;#res := 1; 127949#factFINAL assume true; 127946#factEXIT >#68#return; 127942#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 127943#factENTRY ~n := #in~n; 127945#L25 assume ~n <= 0;#res := 1; 127944#factFINAL assume true; 127940#factEXIT >#70#return; 127941#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 127943#factENTRY ~n := #in~n; 127945#L25 assume ~n <= 0;#res := 1; 127944#factFINAL assume true; 127940#factEXIT >#72#return; 127939#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 127938#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 127937#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 127936#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 127934#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 127931#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 127933#factENTRY ~n := #in~n; 127932#L25 assume !(~n <= 0); 127922#L26 call #t~ret0 := fact(~n - 1);< 127929#factENTRY ~n := #in~n; 127930#L25 assume ~n <= 0;#res := 1; 128080#factFINAL assume true; 128074#factEXIT >#66#return; 128045#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128040#factFINAL assume true; 128035#factEXIT >#74#return; 128023#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 128028#factENTRY ~n := #in~n; 128030#L25 assume ~n <= 0;#res := 1; 128027#factFINAL assume true; 128022#factEXIT >#76#return; 128025#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 128039#factENTRY ~n := #in~n; 128073#L25 assume !(~n <= 0); 127904#L26 call #t~ret0 := fact(~n - 1);< 128044#factENTRY ~n := #in~n; 127903#L25 assume ~n <= 0;#res := 1; 127907#factFINAL assume true; 127972#factEXIT >#66#return; 128042#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128038#factFINAL assume true; 128034#factEXIT >#78#return; 127829#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 127828#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 127827#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 127823#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 127821#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 127817#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 127818#L42-3 [2022-07-13 03:11:27,705 INFO L754 eck$LassoCheckResult]: Loop: 127818#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 128793#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 128646#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 128714#factENTRY ~n := #in~n; 128797#L25 assume !(~n <= 0); 128423#L26 call #t~ret0 := fact(~n - 1);< 128743#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128862#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128985#factFINAL assume true; 128671#factEXIT >#68#return; 128712#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 128790#factENTRY ~n := #in~n; 128796#L25 assume ~n <= 0;#res := 1; 128788#factFINAL assume true; 128747#factEXIT >#70#return; 128615#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 128565#factENTRY ~n := #in~n; 128904#L25 assume !(~n <= 0); 128422#L26 call #t~ret0 := fact(~n - 1);< 128439#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128858#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128853#factFINAL assume true; 128800#factEXIT >#66#return; 128807#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128915#factFINAL assume true; 128914#factEXIT >#72#return; 128660#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 129010#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 129008#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 129006#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 129004#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 128596#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 128714#factENTRY ~n := #in~n; 128797#L25 assume !(~n <= 0); 128423#L26 call #t~ret0 := fact(~n - 1);< 128743#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128862#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128985#factFINAL assume true; 128671#factEXIT >#68#return; 128682#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 128978#factENTRY ~n := #in~n; 128990#L25 assume !(~n <= 0); 127418#L26 call #t~ret0 := fact(~n - 1);< 128892#factENTRY ~n := #in~n; 128939#L25 assume !(~n <= 0); 127415#L26 call #t~ret0 := fact(~n - 1);< 127420#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128862#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128985#factFINAL assume true; 128671#factEXIT >#70#return; 128705#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 128790#factENTRY ~n := #in~n; 128796#L25 assume ~n <= 0;#res := 1; 128788#factFINAL assume true; 128747#factEXIT >#72#return; 128772#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 129208#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 129207#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 129206#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 129198#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 128614#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 128714#factENTRY ~n := #in~n; 128797#L25 assume !(~n <= 0); 128423#L26 call #t~ret0 := fact(~n - 1);< 128743#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128862#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128985#factFINAL assume true; 128671#factEXIT >#68#return; 128673#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 128715#factENTRY ~n := #in~n; 128991#L25 assume !(~n <= 0); 127418#L26 call #t~ret0 := fact(~n - 1);< 128892#factENTRY ~n := #in~n; 128939#L25 assume !(~n <= 0); 127415#L26 call #t~ret0 := fact(~n - 1);< 127420#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128862#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128985#factFINAL assume true; 128671#factEXIT >#70#return; 128692#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 128790#factENTRY ~n := #in~n; 128796#L25 assume ~n <= 0;#res := 1; 128788#factFINAL assume true; 128747#factEXIT >#72#return; 128776#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 129173#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 129172#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 129171#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 129170#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 129116#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 129154#factENTRY ~n := #in~n; 129168#L25 assume !(~n <= 0); 128419#L26 call #t~ret0 := fact(~n - 1);< 128743#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128416#L25 assume !(~n <= 0); 128420#L26 call #t~ret0 := fact(~n - 1);< 128907#factENTRY ~n := #in~n; 128912#L25 assume ~n <= 0;#res := 1; 128911#factFINAL assume true; 128906#factEXIT >#66#return; 128903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128865#factFINAL assume true; 128859#factEXIT >#66#return; 128858#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 128853#factFINAL assume true; 128800#factEXIT >#66#return; 128809#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 129202#factFINAL assume true; 129148#factEXIT >#74#return; 129130#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 129155#factENTRY ~n := #in~n; 129169#L25 assume !(~n <= 0); 127416#L26 call #t~ret0 := fact(~n - 1);< 128892#factENTRY ~n := #in~n; 128792#L25 assume ~n <= 0;#res := 1; 128779#factFINAL assume true; 128733#factEXIT >#66#return; 128738#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 129233#factFINAL assume true; 129105#factEXIT >#76#return; 129117#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 129150#factENTRY ~n := #in~n; 129191#L25 assume !(~n <= 0); 128736#L26 call #t~ret0 := fact(~n - 1);< 128742#factENTRY ~n := #in~n; 128792#L25 assume ~n <= 0;#res := 1; 128779#factFINAL assume true; 128733#factEXIT >#66#return; 128738#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 129233#factFINAL assume true; 129105#factEXIT >#78#return; 129141#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 129177#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 129176#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 129175#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 128958#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 128956#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 127818#L42-3 [2022-07-13 03:11:27,705 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:27,705 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 12 times [2022-07-13 03:11:27,705 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:27,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1796248371] [2022-07-13 03:11:27,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:27,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:27,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:27,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [505139498] [2022-07-13 03:11:27,711 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:11:27,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:27,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:27,717 INFO L229 MonitoredProcess]: Starting monitored process 99 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:11:27,717 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (99)] Waiting until timeout for monitored process [2022-07-13 03:11:27,808 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-07-13 03:11:27,809 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:27,809 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:27,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:27,834 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:27,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:27,835 INFO L85 PathProgramCache]: Analyzing trace with hash -1233843118, now seen corresponding path program 14 times [2022-07-13 03:11:27,835 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:27,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [63643480] [2022-07-13 03:11:27,835 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:27,835 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:27,841 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:27,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1641690477] [2022-07-13 03:11:27,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:27,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:27,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:27,843 INFO L229 MonitoredProcess]: Starting monitored process 100 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:11:27,844 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (100)] Waiting until timeout for monitored process [2022-07-13 03:11:27,966 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:27,966 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:27,968 INFO L263 TraceCheckSpWp]: Trace formula consists of 428 conjuncts, 22 conjunts are in the unsatisfiable core [2022-07-13 03:11:27,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:28,146 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 1131 proven. 215 refuted. 0 times theorem prover too weak. 737 trivial. 0 not checked. [2022-07-13 03:11:28,146 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:28,886 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 73 proven. 669 refuted. 0 times theorem prover too weak. 1341 trivial. 0 not checked. [2022-07-13 03:11:28,886 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:28,886 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [63643480] [2022-07-13 03:11:28,886 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:28,886 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1641690477] [2022-07-13 03:11:28,886 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1641690477] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:28,886 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:28,887 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 19] total 23 [2022-07-13 03:11:28,887 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962730724] [2022-07-13 03:11:28,887 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:28,887 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:28,887 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:28,888 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-07-13 03:11:28,888 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=74, Invalid=432, Unknown=0, NotChecked=0, Total=506 [2022-07-13 03:11:28,888 INFO L87 Difference]: Start difference. First operand 1994 states and 3602 transitions. cyclomatic complexity: 1642 Second operand has 23 states, 18 states have (on average 3.2222222222222223) internal successors, (58), 21 states have internal predecessors, (58), 14 states have call successors, (29), 2 states have call predecessors, (29), 8 states have return successors, (31), 11 states have call predecessors, (31), 14 states have call successors, (31) [2022-07-13 03:11:29,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:29,518 INFO L93 Difference]: Finished difference Result 2313 states and 3981 transitions. [2022-07-13 03:11:29,519 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-07-13 03:11:29,519 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2313 states and 3981 transitions. [2022-07-13 03:11:29,532 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 686 [2022-07-13 03:11:29,548 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2313 states to 2313 states and 3981 transitions. [2022-07-13 03:11:29,549 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1039 [2022-07-13 03:11:29,550 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1039 [2022-07-13 03:11:29,550 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2313 states and 3981 transitions. [2022-07-13 03:11:29,550 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:29,550 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2313 states and 3981 transitions. [2022-07-13 03:11:29,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2313 states and 3981 transitions. [2022-07-13 03:11:29,588 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2313 to 1990. [2022-07-13 03:11:29,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1990 states, 1218 states have (on average 1.1174055829228242) internal successors, (1361), 1191 states have internal predecessors, (1361), 639 states have call successors, (639), 163 states have call predecessors, (639), 133 states have return successors, (1582), 635 states have call predecessors, (1582), 639 states have call successors, (1582) [2022-07-13 03:11:29,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1990 states to 1990 states and 3582 transitions. [2022-07-13 03:11:29,600 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1990 states and 3582 transitions. [2022-07-13 03:11:29,600 INFO L374 stractBuchiCegarLoop]: Abstraction has 1990 states and 3582 transitions. [2022-07-13 03:11:29,600 INFO L287 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2022-07-13 03:11:29,600 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1990 states and 3582 transitions. [2022-07-13 03:11:29,607 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 558 [2022-07-13 03:11:29,607 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:29,608 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:29,608 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:29,608 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [29, 29, 17, 17, 17, 17, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:29,609 INFO L752 eck$LassoCheckResult]: Stem: 132975#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 132942#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 132943#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 132974#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 133009#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 133419#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133417#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 133413#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133414#factENTRY ~n := #in~n; 133418#L25 assume ~n <= 0;#res := 1; 133416#factFINAL assume true; 133412#factEXIT >#68#return; 133406#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133410#factENTRY ~n := #in~n; 133415#L25 assume ~n <= 0;#res := 1; 133411#factFINAL assume true; 133404#factEXIT >#70#return; 133405#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133410#factENTRY ~n := #in~n; 133415#L25 assume ~n <= 0;#res := 1; 133411#factFINAL assume true; 133404#factEXIT >#72#return; 133407#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 132969#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 132970#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133892#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132977#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 132978#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133894#factENTRY ~n := #in~n; 133916#L25 assume !(~n <= 0); 133901#L26 call #t~ret0 := fact(~n - 1);< 133909#factENTRY ~n := #in~n; 133934#L25 assume ~n <= 0;#res := 1; 133958#factFINAL assume true; 133955#factEXIT >#66#return; 133954#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133952#factFINAL assume true; 133946#factEXIT >#74#return; 133940#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133942#factENTRY ~n := #in~n; 133950#L25 assume ~n <= 0;#res := 1; 133943#factFINAL assume true; 133939#factEXIT >#76#return; 133875#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133927#factENTRY ~n := #in~n; 133919#L25 assume !(~n <= 0); 133911#L26 call #t~ret0 := fact(~n - 1);< 133912#factENTRY ~n := #in~n; 133920#L25 assume ~n <= 0;#res := 1; 133917#factFINAL assume true; 133910#factEXIT >#66#return; 133899#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133896#factFINAL assume true; 133869#factEXIT >#78#return; 133774#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 133771#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 133369#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133354#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 133350#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 133333#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 133334#L42-3 [2022-07-13 03:11:29,609 INFO L754 eck$LassoCheckResult]: Loop: 133334#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134335#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 134248#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134332#factENTRY ~n := #in~n; 134336#L25 assume !(~n <= 0); 134118#L26 call #t~ret0 := fact(~n - 1);< 134063#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134436#factFINAL assume true; 134422#factEXIT >#68#return; 132932#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132917#factENTRY ~n := #in~n; 132927#L25 assume ~n <= 0;#res := 1; 134333#factFINAL assume true; 134247#factEXIT >#70#return; 134330#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134438#factENTRY ~n := #in~n; 134448#L25 assume !(~n <= 0); 134120#L26 call #t~ret0 := fact(~n - 1);< 134202#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134436#factFINAL assume true; 134422#factEXIT >#72#return; 134433#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 134442#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134441#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134440#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134439#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 134282#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134332#factENTRY ~n := #in~n; 134336#L25 assume !(~n <= 0); 134118#L26 call #t~ret0 := fact(~n - 1);< 134063#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134436#factFINAL assume true; 134422#factEXIT >#68#return; 134296#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134359#factENTRY ~n := #in~n; 134445#L25 assume !(~n <= 0); 134133#L26 call #t~ret0 := fact(~n - 1);< 132952#factENTRY ~n := #in~n; 134203#L25 assume ~n <= 0;#res := 1; 134200#factFINAL assume true; 134128#factEXIT >#66#return; 134140#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134452#factFINAL assume true; 134449#factEXIT >#70#return; 134251#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134357#factENTRY ~n := #in~n; 134337#L25 assume !(~n <= 0); 134134#L26 call #t~ret0 := fact(~n - 1);< 134168#factENTRY ~n := #in~n; 134203#L25 assume ~n <= 0;#res := 1; 134200#factFINAL assume true; 134128#factEXIT >#66#return; 134140#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134452#factFINAL assume true; 134449#factEXIT >#72#return; 134306#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 134716#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134715#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134714#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134652#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 134298#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134332#factENTRY ~n := #in~n; 134336#L25 assume !(~n <= 0); 134118#L26 call #t~ret0 := fact(~n - 1);< 134063#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134436#factFINAL assume true; 134422#factEXIT >#68#return; 134425#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134437#factENTRY ~n := #in~n; 134444#L25 assume !(~n <= 0); 134133#L26 call #t~ret0 := fact(~n - 1);< 132952#factENTRY ~n := #in~n; 134204#L25 assume !(~n <= 0); 134108#L26 call #t~ret0 := fact(~n - 1);< 134151#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134436#factFINAL assume true; 134422#factEXIT >#70#return; 132923#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132917#factENTRY ~n := #in~n; 132927#L25 assume ~n <= 0;#res := 1; 134333#factFINAL assume true; 134247#factEXIT >#72#return; 134326#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 134694#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134693#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134692#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134691#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 134541#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134616#factENTRY ~n := #in~n; 134774#L25 assume !(~n <= 0); 134119#L26 call #t~ret0 := fact(~n - 1);< 134063#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 132941#L25 assume !(~n <= 0); 134107#L26 call #t~ret0 := fact(~n - 1);< 134150#factENTRY ~n := #in~n; 134198#L25 assume ~n <= 0;#res := 1; 134196#factFINAL assume true; 134106#factEXIT >#66#return; 134109#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134201#factFINAL assume true; 134142#factEXIT >#66#return; 134146#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134618#factFINAL assume true; 134110#factEXIT >#66#return; 134123#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134690#factFINAL assume true; 134689#factEXIT >#74#return; 134675#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134688#factENTRY ~n := #in~n; 134773#L25 assume !(~n <= 0); 134129#L26 call #t~ret0 := fact(~n - 1);< 132952#factENTRY ~n := #in~n; 134203#L25 assume ~n <= 0;#res := 1; 134200#factFINAL assume true; 134128#factEXIT >#66#return; 134136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134686#factFINAL assume true; 134673#factEXIT >#76#return; 134071#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134685#factENTRY ~n := #in~n; 134066#L25 assume !(~n <= 0); 134076#L26 call #t~ret0 := fact(~n - 1);< 134168#factENTRY ~n := #in~n; 134203#L25 assume ~n <= 0;#res := 1; 134200#factFINAL assume true; 134128#factEXIT >#66#return; 134136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134686#factFINAL assume true; 134673#factEXIT >#78#return; 134672#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 134671#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 134670#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134364#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 134363#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 134362#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 133334#L42-3 [2022-07-13 03:11:29,609 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:29,609 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 13 times [2022-07-13 03:11:29,610 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:29,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [485685155] [2022-07-13 03:11:29,610 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:29,610 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:29,615 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:29,615 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [138588681] [2022-07-13 03:11:29,615 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:11:29,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:29,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:29,621 INFO L229 MonitoredProcess]: Starting monitored process 101 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:11:29,622 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (101)] Waiting until timeout for monitored process [2022-07-13 03:11:29,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:29,713 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:29,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:29,740 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:29,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:29,740 INFO L85 PathProgramCache]: Analyzing trace with hash -1905806646, now seen corresponding path program 15 times [2022-07-13 03:11:29,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:29,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [986744176] [2022-07-13 03:11:29,740 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:29,740 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:29,747 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:29,747 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1545201560] [2022-07-13 03:11:29,747 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:29,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:29,748 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:29,750 INFO L229 MonitoredProcess]: Starting monitored process 102 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:11:29,750 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (102)] Waiting until timeout for monitored process [2022-07-13 03:11:29,873 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-07-13 03:11:29,874 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:29,875 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-13 03:11:29,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:29,984 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 560 proven. 89 refuted. 0 times theorem prover too weak. 1284 trivial. 0 not checked. [2022-07-13 03:11:29,984 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:30,351 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 312 proven. 121 refuted. 0 times theorem prover too weak. 1500 trivial. 0 not checked. [2022-07-13 03:11:30,351 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:30,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [986744176] [2022-07-13 03:11:30,351 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:30,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1545201560] [2022-07-13 03:11:30,352 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1545201560] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:30,352 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:30,352 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13] total 16 [2022-07-13 03:11:30,352 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1671140993] [2022-07-13 03:11:30,352 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:30,352 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:30,352 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:30,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-07-13 03:11:30,353 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-07-13 03:11:30,353 INFO L87 Difference]: Start difference. First operand 1990 states and 3582 transitions. cyclomatic complexity: 1626 Second operand has 16 states, 13 states have (on average 3.769230769230769) internal successors, (49), 16 states have internal predecessors, (49), 11 states have call successors, (18), 2 states have call predecessors, (18), 6 states have return successors, (18), 7 states have call predecessors, (18), 11 states have call successors, (18) [2022-07-13 03:11:30,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:30,916 INFO L93 Difference]: Finished difference Result 2200 states and 3707 transitions. [2022-07-13 03:11:30,917 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-07-13 03:11:30,917 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2200 states and 3707 transitions. [2022-07-13 03:11:30,933 INFO L131 ngComponentsAnalysis]: Automaton has 23 accepting balls. 565 [2022-07-13 03:11:30,945 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2200 states to 1848 states and 3155 transitions. [2022-07-13 03:11:30,946 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 950 [2022-07-13 03:11:30,946 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 950 [2022-07-13 03:11:30,946 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1848 states and 3155 transitions. [2022-07-13 03:11:30,947 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:30,947 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1848 states and 3155 transitions. [2022-07-13 03:11:30,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1848 states and 3155 transitions. [2022-07-13 03:11:30,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1848 to 1579. [2022-07-13 03:11:30,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1579 states, 974 states have (on average 1.0995893223819302) internal successors, (1071), 949 states have internal predecessors, (1071), 490 states have call successors, (490), 132 states have call predecessors, (490), 115 states have return successors, (1171), 497 states have call predecessors, (1171), 490 states have call successors, (1171) [2022-07-13 03:11:31,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1579 states to 1579 states and 2732 transitions. [2022-07-13 03:11:31,026 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1579 states and 2732 transitions. [2022-07-13 03:11:31,026 INFO L374 stractBuchiCegarLoop]: Abstraction has 1579 states and 2732 transitions. [2022-07-13 03:11:31,026 INFO L287 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2022-07-13 03:11:31,026 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1579 states and 2732 transitions. [2022-07-13 03:11:31,032 INFO L131 ngComponentsAnalysis]: Automaton has 21 accepting balls. 487 [2022-07-13 03:11:31,032 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:31,032 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:31,033 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 11, 7, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:31,033 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [9, 9, 6, 6, 6, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:31,033 INFO L752 eck$LassoCheckResult]: Stem: 138281#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 138246#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 138247#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 138280#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 138264#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 138265#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 139511#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 138234#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 138235#factENTRY ~n := #in~n; 139526#L25 assume ~n <= 0;#res := 1; 139525#factFINAL assume true; 139524#factEXIT >#68#return; 138296#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 138231#factENTRY ~n := #in~n; 139545#L25 assume ~n <= 0;#res := 1; 139544#factFINAL assume true; 139541#factEXIT >#70#return; 138230#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 138231#factENTRY ~n := #in~n; 139545#L25 assume ~n <= 0;#res := 1; 139544#factFINAL assume true; 139541#factEXIT >#72#return; 139542#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 138274#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 138275#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 139671#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 138283#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 138284#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 139610#factENTRY ~n := #in~n; 139633#L25 assume !(~n <= 0); 139622#L26 call #t~ret0 := fact(~n - 1);< 139628#factENTRY ~n := #in~n; 139650#L25 assume ~n <= 0;#res := 1; 139686#factFINAL assume true; 139685#factEXIT >#66#return; 139684#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 139683#factFINAL assume true; 139682#factEXIT >#74#return; 139674#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 139676#factENTRY ~n := #in~n; 139678#L25 assume ~n <= 0;#res := 1; 139675#factFINAL assume true; 139673#factEXIT >#76#return; 139592#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 139643#factENTRY ~n := #in~n; 139641#L25 assume !(~n <= 0); 139618#L26 call #t~ret0 := fact(~n - 1);< 139620#factENTRY ~n := #in~n; 139645#L25 assume ~n <= 0;#res := 1; 139629#factFINAL assume true; 139616#factEXIT >#66#return; 139614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 139611#factFINAL assume true; 139588#factEXIT >#78#return; 139587#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 139586#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 139583#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 138308#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 138309#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 139067#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 138989#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 138694#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 138623#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 138681#factENTRY ~n := #in~n; 138692#L25 assume !(~n <= 0); 138385#L26 call #t~ret0 := fact(~n - 1);< 138457#factENTRY ~n := #in~n; 138484#L25 assume !(~n <= 0); 138399#L26 call #t~ret0 := fact(~n - 1);< 138482#factENTRY ~n := #in~n; 138485#L25 assume ~n <= 0;#res := 1; 138483#factFINAL assume true; 138473#factEXIT >#66#return; 138474#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138537#factFINAL assume true; 138475#factEXIT >#66#return; 138477#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138811#factFINAL assume true; 138800#factEXIT >#68#return; 138620#L30-1 [2022-07-13 03:11:31,033 INFO L754 eck$LassoCheckResult]: Loop: 138620#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 138684#factENTRY ~n := #in~n; 138693#L25 assume ~n <= 0;#res := 1; 138682#factFINAL assume true; 138579#factEXIT >#70#return; 138673#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 138517#factENTRY ~n := #in~n; 138772#L25 assume !(~n <= 0); 138395#L26 call #t~ret0 := fact(~n - 1);< 138486#factENTRY ~n := #in~n; 138484#L25 assume !(~n <= 0); 138399#L26 call #t~ret0 := fact(~n - 1);< 138482#factENTRY ~n := #in~n; 138484#L25 assume !(~n <= 0); 138399#L26 call #t~ret0 := fact(~n - 1);< 138482#factENTRY ~n := #in~n; 138484#L25 assume !(~n <= 0); 138399#L26 call #t~ret0 := fact(~n - 1);< 138482#factENTRY ~n := #in~n; 138485#L25 assume ~n <= 0;#res := 1; 138483#factFINAL assume true; 138473#factEXIT >#66#return; 138474#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138537#factFINAL assume true; 138475#factEXIT >#66#return; 138478#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138394#factFINAL assume true; 138402#factEXIT >#66#return; 138420#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138421#factFINAL assume true; 138530#factEXIT >#66#return; 138531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138812#factFINAL assume true; 138810#factEXIT >#72#return; 138742#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 138867#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 138860#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 138861#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 138832#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 138648#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 138681#factENTRY ~n := #in~n; 138692#L25 assume !(~n <= 0); 138385#L26 call #t~ret0 := fact(~n - 1);< 138457#factENTRY ~n := #in~n; 138484#L25 assume !(~n <= 0); 138399#L26 call #t~ret0 := fact(~n - 1);< 138482#factENTRY ~n := #in~n; 138485#L25 assume ~n <= 0;#res := 1; 138483#factFINAL assume true; 138473#factEXIT >#66#return; 138474#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138537#factFINAL assume true; 138475#factEXIT >#66#return; 138477#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 138811#factFINAL assume true; 138800#factEXIT >#68#return; 138620#L30-1 [2022-07-13 03:11:31,034 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:31,034 INFO L85 PathProgramCache]: Analyzing trace with hash 2003427327, now seen corresponding path program 14 times [2022-07-13 03:11:31,034 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:31,035 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [350544681] [2022-07-13 03:11:31,035 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:31,035 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:31,040 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:31,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [202189057] [2022-07-13 03:11:31,040 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:31,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:31,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:31,045 INFO L229 MonitoredProcess]: Starting monitored process 103 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:11:31,045 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (103)] Waiting until timeout for monitored process [2022-07-13 03:11:31,140 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:31,140 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:31,141 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-13 03:11:31,142 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:31,209 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 10 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2022-07-13 03:11:31,209 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:31,374 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 11 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2022-07-13 03:11:31,374 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:31,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [350544681] [2022-07-13 03:11:31,375 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:31,375 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [202189057] [2022-07-13 03:11:31,375 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [202189057] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:31,375 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:31,375 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8] total 9 [2022-07-13 03:11:31,375 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1113326290] [2022-07-13 03:11:31,375 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:31,375 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:31,375 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:31,375 INFO L85 PathProgramCache]: Analyzing trace with hash -1312281872, now seen corresponding path program 5 times [2022-07-13 03:11:31,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:31,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1554108368] [2022-07-13 03:11:31,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:31,376 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:31,383 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:31,384 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1920659205] [2022-07-13 03:11:31,384 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:31,384 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:31,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:31,389 INFO L229 MonitoredProcess]: Starting monitored process 104 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:11:31,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (104)] Waiting until timeout for monitored process [2022-07-13 03:11:31,480 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2022-07-13 03:11:31,480 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:31,480 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:31,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:31,503 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:32,968 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:32,968 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:32,969 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:32,969 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:32,969 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:11:32,969 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:32,969 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:32,969 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:32,969 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration28_Loop [2022-07-13 03:11:32,969 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:32,969 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:32,970 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:11:32,972 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:11:32,976 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:11:32,977 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:11:32,979 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:11:33,003 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:11:33,079 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:33,079 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:11:33,079 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,079 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,081 INFO L229 MonitoredProcess]: Starting monitored process 105 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:11:33,081 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Waiting until timeout for monitored process [2022-07-13 03:11:33,083 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:33,083 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,089 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:33,089 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:33,103 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:33,104 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,104 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,105 INFO L229 MonitoredProcess]: Starting monitored process 106 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:11:33,106 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Waiting until timeout for monitored process [2022-07-13 03:11:33,107 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:33,107 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,112 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:33,112 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:33,130 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:33,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,130 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,132 INFO L229 MonitoredProcess]: Starting monitored process 107 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:11:33,132 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Waiting until timeout for monitored process [2022-07-13 03:11:33,134 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:33,134 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,140 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:33,140 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:33,155 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Ended with exit code 0 [2022-07-13 03:11:33,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,157 INFO L229 MonitoredProcess]: Starting monitored process 108 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:11:33,158 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Waiting until timeout for monitored process [2022-07-13 03:11:33,160 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:33,160 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,166 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:33,166 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:33,181 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Ended with exit code 0 [2022-07-13 03:11:33,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,183 INFO L229 MonitoredProcess]: Starting monitored process 109 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:11:33,184 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Waiting until timeout for monitored process [2022-07-13 03:11:33,185 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:33,185 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,206 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Ended with exit code 0 [2022-07-13 03:11:33,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,208 INFO L229 MonitoredProcess]: Starting monitored process 110 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:11:33,209 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Waiting until timeout for monitored process [2022-07-13 03:11:33,210 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:11:33,210 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:33,222 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:11:33,237 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:33,237 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:33,237 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:33,237 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:33,237 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:33,237 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:11:33,237 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,237 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:33,237 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:33,237 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration28_Loop [2022-07-13 03:11:33,237 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:33,237 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:33,238 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:11:33,239 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:11:33,240 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:11:33,242 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:11:33,263 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:11:33,264 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:11:33,339 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:33,339 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:33,339 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,340 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,341 INFO L229 MonitoredProcess]: Starting monitored process 111 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:11:33,347 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (111)] Waiting until timeout for monitored process [2022-07-13 03:11:33,348 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:11:33,353 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:33,353 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:33,353 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:33,353 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:33,353 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:33,354 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:33,354 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:33,354 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:33,368 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (111)] Ended with exit code 0 [2022-07-13 03:11:33,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,370 INFO L229 MonitoredProcess]: Starting monitored process 112 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:11:33,371 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (112)] Waiting until timeout for monitored process [2022-07-13 03:11:33,372 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:11:33,377 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:33,377 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:33,377 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:33,377 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:33,377 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:33,378 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:33,378 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:33,379 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:33,393 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (112)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:33,393 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,395 INFO L229 MonitoredProcess]: Starting monitored process 113 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:11:33,395 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (113)] Waiting until timeout for monitored process [2022-07-13 03:11:33,396 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:11:33,401 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:33,401 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:33,402 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:33,402 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:33,402 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:33,402 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:33,402 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:33,403 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:33,417 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (113)] Ended with exit code 0 [2022-07-13 03:11:33,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,419 INFO L229 MonitoredProcess]: Starting monitored process 114 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:11:33,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Waiting until timeout for monitored process [2022-07-13 03:11:33,420 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:11:33,426 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:33,426 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:33,426 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:33,426 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:33,426 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:33,429 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:33,429 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:33,448 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:33,452 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-13 03:11:33,452 INFO L444 ModelExtractionUtils]: 6 out of 10 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-13 03:11:33,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:33,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:33,504 INFO L229 MonitoredProcess]: Starting monitored process 115 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:11:33,505 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Waiting until timeout for monitored process [2022-07-13 03:11:33,506 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:33,506 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:33,506 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:33,506 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1, ULTIMATE.start_main_~n~0#1) = -4*ULTIMATE.start_main_~k~0#1 + 3*ULTIMATE.start_main_~n~0#1 Supporting invariants [] [2022-07-13 03:11:33,521 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Ended with exit code 0 [2022-07-13 03:11:33,521 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:33,529 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:33,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:33,590 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-13 03:11:33,592 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:33,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:33,977 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 31 conjunts are in the unsatisfiable core [2022-07-13 03:11:33,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:34,274 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 70 proven. 7 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:34,275 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-13 03:11:34,275 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185 Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:34,566 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185. Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) Result 1821 states and 3094 transitions. Complement of second has 40 states. [2022-07-13 03:11:34,568 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 2 stem states 7 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:34,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:34,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 53 transitions. [2022-07-13 03:11:34,569 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 53 transitions. Stem has 79 letters. Loop has 56 letters. [2022-07-13 03:11:34,569 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:34,569 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:34,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:34,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:34,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-13 03:11:34,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:35,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:35,007 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 31 conjunts are in the unsatisfiable core [2022-07-13 03:11:35,009 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:35,288 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 70 proven. 7 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:35,289 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-13 03:11:35,289 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185 Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:35,563 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185. Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) Result 1821 states and 3094 transitions. Complement of second has 40 states. [2022-07-13 03:11:35,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 2 stem states 7 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:35,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:35,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 53 transitions. [2022-07-13 03:11:35,565 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 53 transitions. Stem has 79 letters. Loop has 56 letters. [2022-07-13 03:11:35,565 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:35,565 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:35,574 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:35,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:35,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-13 03:11:35,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:36,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:36,025 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 31 conjunts are in the unsatisfiable core [2022-07-13 03:11:36,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:36,204 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:36,303 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 70 proven. 7 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:36,303 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-13 03:11:36,303 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185 Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:36,701 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1579 states and 2732 transitions. cyclomatic complexity: 1185. Second operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) Result 3665 states and 6049 transitions. Complement of second has 94 states. [2022-07-13 03:11:36,703 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 2 stem states 8 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:36,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.222222222222222) internal successors, (38), 10 states have internal predecessors, (38), 7 states have call successors, (12), 2 states have call predecessors, (12), 5 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-07-13 03:11:36,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-07-13 03:11:36,704 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 101 transitions. Stem has 79 letters. Loop has 56 letters. [2022-07-13 03:11:36,705 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:36,705 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 101 transitions. Stem has 135 letters. Loop has 56 letters. [2022-07-13 03:11:36,705 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:36,706 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 101 transitions. Stem has 79 letters. Loop has 112 letters. [2022-07-13 03:11:36,706 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:36,706 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3665 states and 6049 transitions. [2022-07-13 03:11:36,743 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 464 [2022-07-13 03:11:36,759 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3665 states to 2166 states and 3426 transitions. [2022-07-13 03:11:36,759 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 832 [2022-07-13 03:11:36,760 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 844 [2022-07-13 03:11:36,760 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2166 states and 3426 transitions. [2022-07-13 03:11:36,761 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:36,761 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2166 states and 3426 transitions. [2022-07-13 03:11:36,762 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2166 states and 3426 transitions. [2022-07-13 03:11:36,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2166 to 2023. [2022-07-13 03:11:36,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2023 states, 1279 states have (on average 1.0875684128225176) internal successors, (1391), 1257 states have internal predecessors, (1391), 540 states have call successors, (555), 208 states have call predecessors, (555), 204 states have return successors, (1194), 557 states have call predecessors, (1194), 540 states have call successors, (1194) [2022-07-13 03:11:36,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2023 states to 2023 states and 3140 transitions. [2022-07-13 03:11:36,814 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2023 states and 3140 transitions. [2022-07-13 03:11:36,815 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:36,815 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-13 03:11:36,815 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-07-13 03:11:36,815 INFO L87 Difference]: Start difference. First operand 2023 states and 3140 transitions. Second operand has 10 states, 8 states have (on average 4.25) internal successors, (34), 9 states have internal predecessors, (34), 6 states have call successors, (11), 1 states have call predecessors, (11), 3 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-07-13 03:11:37,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:37,095 INFO L93 Difference]: Finished difference Result 2449 states and 3954 transitions. [2022-07-13 03:11:37,096 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-13 03:11:37,096 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2449 states and 3954 transitions. [2022-07-13 03:11:37,114 INFO L131 ngComponentsAnalysis]: Automaton has 13 accepting balls. 467 [2022-07-13 03:11:37,131 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2449 states to 2449 states and 3954 transitions. [2022-07-13 03:11:37,131 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 864 [2022-07-13 03:11:37,132 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 864 [2022-07-13 03:11:37,132 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2449 states and 3954 transitions. [2022-07-13 03:11:37,132 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:37,132 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2449 states and 3954 transitions. [2022-07-13 03:11:37,133 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2449 states and 3954 transitions. [2022-07-13 03:11:37,178 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2449 to 2028. [2022-07-13 03:11:37,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2028 states, 1283 states have (on average 1.0888542478565861) internal successors, (1397), 1262 states have internal predecessors, (1397), 541 states have call successors, (556), 208 states have call predecessors, (556), 204 states have return successors, (1196), 557 states have call predecessors, (1196), 541 states have call successors, (1196) [2022-07-13 03:11:37,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2028 states to 2028 states and 3149 transitions. [2022-07-13 03:11:37,187 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2028 states and 3149 transitions. [2022-07-13 03:11:37,188 INFO L374 stractBuchiCegarLoop]: Abstraction has 2028 states and 3149 transitions. [2022-07-13 03:11:37,188 INFO L287 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2022-07-13 03:11:37,188 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2028 states and 3149 transitions. [2022-07-13 03:11:37,195 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 433 [2022-07-13 03:11:37,195 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:37,195 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:37,197 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 16, 12, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:37,198 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [14, 14, 8, 8, 8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-07-13 03:11:37,198 INFO L752 eck$LassoCheckResult]: Stem: 153553#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 153524#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 153525#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 153552#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 153538#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 153539#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154721#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 154718#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 154719#factENTRY ~n := #in~n; 154722#L25 assume ~n <= 0;#res := 1; 154720#factFINAL assume true; 154717#factEXIT >#68#return; 154715#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 154716#factENTRY ~n := #in~n; 154724#L25 assume ~n <= 0;#res := 1; 154723#factFINAL assume true; 154714#factEXIT >#70#return; 154710#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 154711#factENTRY ~n := #in~n; 154727#L25 assume ~n <= 0;#res := 1; 154726#factFINAL assume true; 154709#factEXIT >#72#return; 154708#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 154707#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 154706#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 154705#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154703#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 154666#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 154701#factENTRY ~n := #in~n; 154699#L25 assume !(~n <= 0); 154661#L26 call #t~ret0 := fact(~n - 1);< 154667#factENTRY ~n := #in~n; 154684#L25 assume ~n <= 0;#res := 1; 154734#factFINAL assume true; 154733#factEXIT >#66#return; 154732#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154731#factFINAL assume true; 154728#factEXIT >#74#return; 154612#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 154615#factENTRY ~n := #in~n; 154618#L25 assume ~n <= 0;#res := 1; 154617#factFINAL assume true; 154611#factEXIT >#76#return; 154122#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 154123#factENTRY ~n := #in~n; 154702#L25 assume !(~n <= 0); 154696#L26 call #t~ret0 := fact(~n - 1);< 154697#factENTRY ~n := #in~n; 154687#L25 assume ~n <= 0;#res := 1; 154725#factFINAL assume true; 154695#factEXIT >#66#return; 154692#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154619#factFINAL assume true; 154620#factEXIT >#78#return; 154115#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 154114#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 154113#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 154112#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 154110#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 154107#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 154104#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154099#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 154074#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 154077#factENTRY ~n := #in~n; 154091#L25 assume ~n <= 0;#res := 1; 154092#factFINAL assume true; 154536#factEXIT >#68#return; 153561#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 153570#factENTRY ~n := #in~n; 153560#L25 assume ~n <= 0;#res := 1; 153562#factFINAL assume true; 154920#factEXIT >#70#return; 153520#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 153511#factENTRY ~n := #in~n; 153521#L25 assume ~n <= 0;#res := 1; 154919#factFINAL assume true; 154918#factEXIT >#72#return; 154917#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 154915#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 154914#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 154912#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154909#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 153500#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 153501#factENTRY ~n := #in~n; 154176#L25 assume !(~n <= 0); 153633#L26 call #t~ret0 := fact(~n - 1);< 153702#factENTRY ~n := #in~n; 153699#L25 assume ~n <= 0;#res := 1; 153700#factFINAL assume true; 153618#factEXIT >#66#return; 153643#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154908#factFINAL assume true; 154907#factEXIT >#74#return; 153574#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 153575#factENTRY ~n := #in~n; 154856#L25 assume ~n <= 0;#res := 1; 154840#factFINAL assume true; 154834#factEXIT >#76#return; 153740#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 153744#factENTRY ~n := #in~n; 153743#L25 assume !(~n <= 0); 153623#L26 call #t~ret0 := fact(~n - 1);< 153704#factENTRY ~n := #in~n; 153699#L25 assume ~n <= 0;#res := 1; 153700#factFINAL assume true; 153618#factEXIT >#66#return; 153640#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154869#factFINAL assume true; 154870#factEXIT >#78#return; 153594#L30-8 [2022-07-13 03:11:37,198 INFO L754 eck$LassoCheckResult]: Loop: 153594#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 153535#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 153536#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 153578#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154902#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 153601#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 153613#factENTRY ~n := #in~n; 153697#L25 assume !(~n <= 0); 153630#L26 call #t~ret0 := fact(~n - 1);< 153702#factENTRY ~n := #in~n; 153703#L25 assume !(~n <= 0); 153658#L26 call #t~ret0 := fact(~n - 1);< 153730#factENTRY ~n := #in~n; 153734#L25 assume ~n <= 0;#res := 1; 153732#factFINAL assume true; 153720#factEXIT >#66#return; 153701#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 153655#factFINAL assume true; 153663#factEXIT >#66#return; 153725#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154871#factFINAL assume true; 154867#factEXIT >#74#return; 153645#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 153615#factENTRY ~n := #in~n; 154857#L25 assume !(~n <= 0); 153628#L26 call #t~ret0 := fact(~n - 1);< 153653#factENTRY ~n := #in~n; 153699#L25 assume ~n <= 0;#res := 1; 153700#factFINAL assume true; 153618#factEXIT >#66#return; 153640#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154869#factFINAL assume true; 154870#factEXIT >#76#return; 153651#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 153610#factENTRY ~n := #in~n; 153696#L25 assume !(~n <= 0); 153628#L26 call #t~ret0 := fact(~n - 1);< 153653#factENTRY ~n := #in~n; 153733#L25 assume !(~n <= 0); 153721#L26 call #t~ret0 := fact(~n - 1);< 153731#factENTRY ~n := #in~n; 153734#L25 assume ~n <= 0;#res := 1; 153732#factFINAL assume true; 153720#factEXIT >#66#return; 153701#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 153655#factFINAL assume true; 153663#factEXIT >#66#return; 153725#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154871#factFINAL assume true; 154867#factEXIT >#78#return; 154868#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 154906#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 154905#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 154904#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 154903#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 153596#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 153613#factENTRY ~n := #in~n; 153697#L25 assume !(~n <= 0); 153630#L26 call #t~ret0 := fact(~n - 1);< 153702#factENTRY ~n := #in~n; 153699#L25 assume ~n <= 0;#res := 1; 153700#factFINAL assume true; 153618#factEXIT >#66#return; 153640#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154869#factFINAL assume true; 154870#factEXIT >#74#return; 154835#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 153575#factENTRY ~n := #in~n; 154856#L25 assume ~n <= 0;#res := 1; 154840#factFINAL assume true; 154834#factEXIT >#76#return; 153600#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 153698#factENTRY ~n := #in~n; 153654#L25 assume !(~n <= 0); 153630#L26 call #t~ret0 := fact(~n - 1);< 153702#factENTRY ~n := #in~n; 153703#L25 assume !(~n <= 0); 153658#L26 call #t~ret0 := fact(~n - 1);< 153730#factENTRY ~n := #in~n; 153734#L25 assume ~n <= 0;#res := 1; 153732#factFINAL assume true; 153720#factEXIT >#66#return; 153701#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 153655#factFINAL assume true; 153663#factEXIT >#66#return; 153725#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 154871#factFINAL assume true; 154867#factEXIT >#78#return; 153594#L30-8 [2022-07-13 03:11:37,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:37,199 INFO L85 PathProgramCache]: Analyzing trace with hash -867238810, now seen corresponding path program 15 times [2022-07-13 03:11:37,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:37,199 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [938066407] [2022-07-13 03:11:37,199 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:37,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:37,205 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:37,206 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1999382130] [2022-07-13 03:11:37,206 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:37,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:37,206 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:37,208 INFO L229 MonitoredProcess]: Starting monitored process 116 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:11:37,209 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (116)] Waiting until timeout for monitored process [2022-07-13 03:11:37,298 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-07-13 03:11:37,298 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:37,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 5 conjunts are in the unsatisfiable core [2022-07-13 03:11:37,300 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:37,361 INFO L134 CoverageAnalysis]: Checked inductivity of 520 backedges. 249 proven. 2 refuted. 0 times theorem prover too weak. 269 trivial. 0 not checked. [2022-07-13 03:11:37,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:37,468 INFO L134 CoverageAnalysis]: Checked inductivity of 520 backedges. 4 proven. 19 refuted. 0 times theorem prover too weak. 497 trivial. 0 not checked. [2022-07-13 03:11:37,468 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:37,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [938066407] [2022-07-13 03:11:37,468 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:37,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1999382130] [2022-07-13 03:11:37,468 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1999382130] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:37,468 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:37,468 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-07-13 03:11:37,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [178223632] [2022-07-13 03:11:37,469 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:37,469 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:37,469 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:37,469 INFO L85 PathProgramCache]: Analyzing trace with hash -124635737, now seen corresponding path program 1 times [2022-07-13 03:11:37,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:37,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [503701817] [2022-07-13 03:11:37,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:37,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:37,473 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:37,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [441915368] [2022-07-13 03:11:37,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:37,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:37,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:37,475 INFO L229 MonitoredProcess]: Starting monitored process 117 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:11:37,476 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (117)] Waiting until timeout for monitored process [2022-07-13 03:11:37,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:37,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 15 conjunts are in the unsatisfiable core [2022-07-13 03:11:37,577 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:37,681 INFO L134 CoverageAnalysis]: Checked inductivity of 428 backedges. 248 proven. 72 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-07-13 03:11:37,682 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:38,162 INFO L134 CoverageAnalysis]: Checked inductivity of 428 backedges. 26 proven. 216 refuted. 0 times theorem prover too weak. 186 trivial. 0 not checked. [2022-07-13 03:11:38,163 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:38,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [503701817] [2022-07-13 03:11:38,163 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:38,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [441915368] [2022-07-13 03:11:38,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [441915368] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:38,163 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:38,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 14] total 17 [2022-07-13 03:11:38,164 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1783338201] [2022-07-13 03:11:38,164 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:38,164 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:38,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:38,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-07-13 03:11:38,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-07-13 03:11:38,165 INFO L87 Difference]: Start difference. First operand 2028 states and 3149 transitions. cyclomatic complexity: 1153 Second operand has 17 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 14 states have internal predecessors, (45), 11 states have call successors, (18), 2 states have call predecessors, (18), 7 states have return successors, (20), 9 states have call predecessors, (20), 11 states have call successors, (20) [2022-07-13 03:11:38,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:38,592 INFO L93 Difference]: Finished difference Result 2452 states and 3674 transitions. [2022-07-13 03:11:38,593 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-07-13 03:11:38,593 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2452 states and 3674 transitions. [2022-07-13 03:11:38,612 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 503 [2022-07-13 03:11:38,627 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2452 states to 2447 states and 3669 transitions. [2022-07-13 03:11:38,627 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 916 [2022-07-13 03:11:38,628 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 916 [2022-07-13 03:11:38,628 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2447 states and 3669 transitions. [2022-07-13 03:11:38,628 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:38,628 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2447 states and 3669 transitions. [2022-07-13 03:11:38,629 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2447 states and 3669 transitions. [2022-07-13 03:11:38,664 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2447 to 1989. [2022-07-13 03:11:38,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1989 states, 1268 states have (on average 1.088328075709779) internal successors, (1380), 1247 states have internal predecessors, (1380), 517 states have call successors, (532), 208 states have call predecessors, (532), 204 states have return successors, (1136), 533 states have call predecessors, (1136), 517 states have call successors, (1136) [2022-07-13 03:11:38,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1989 states to 1989 states and 3048 transitions. [2022-07-13 03:11:38,680 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1989 states and 3048 transitions. [2022-07-13 03:11:38,680 INFO L374 stractBuchiCegarLoop]: Abstraction has 1989 states and 3048 transitions. [2022-07-13 03:11:38,680 INFO L287 stractBuchiCegarLoop]: ======== Iteration 30 ============ [2022-07-13 03:11:38,680 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1989 states and 3048 transitions. [2022-07-13 03:11:38,688 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 414 [2022-07-13 03:11:38,688 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:38,688 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:38,689 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [19, 19, 13, 6, 6, 6, 6, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] [2022-07-13 03:11:38,690 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:38,690 INFO L752 eck$LassoCheckResult]: Stem: 159260#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 159232#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 159233#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 159259#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 159245#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 159246#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160403#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 160398#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 160399#factENTRY ~n := #in~n; 160406#L25 assume ~n <= 0;#res := 1; 160404#factFINAL assume true; 160397#factEXIT >#68#return; 160385#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 160386#factENTRY ~n := #in~n; 160407#L25 assume ~n <= 0;#res := 1; 160396#factFINAL assume true; 160384#factEXIT >#70#return; 160380#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 160381#factENTRY ~n := #in~n; 160395#L25 assume ~n <= 0;#res := 1; 160383#factFINAL assume true; 160379#factEXIT >#72#return; 160377#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 160375#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160373#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160367#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160364#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 160360#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 160361#factENTRY ~n := #in~n; 160405#L25 assume !(~n <= 0); 160389#L26 call #t~ret0 := fact(~n - 1);< 160394#factENTRY ~n := #in~n; 160421#L25 assume ~n <= 0;#res := 1; 160459#factFINAL assume true; 160458#factEXIT >#66#return; 160457#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160456#factFINAL assume true; 160455#factEXIT >#74#return; 160451#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 160452#factENTRY ~n := #in~n; 160454#L25 assume ~n <= 0;#res := 1; 160453#factFINAL assume true; 160450#factEXIT >#76#return; 160339#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 160363#factENTRY ~n := #in~n; 160558#L25 assume !(~n <= 0); 160369#L26 call #t~ret0 := fact(~n - 1);< 160372#factENTRY ~n := #in~n; 160376#L25 assume ~n <= 0;#res := 1; 160374#factFINAL assume true; 160368#factEXIT >#66#return; 160366#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160362#factFINAL assume true; 160338#factEXIT >#78#return; 160337#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 160336#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 160335#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160334#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 160333#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 160332#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 159248#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159273#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 160928#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 160929#factENTRY ~n := #in~n; 160936#L25 assume ~n <= 0;#res := 1; 160937#factFINAL assume true; 161096#factEXIT >#68#return; 161092#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 161093#factENTRY ~n := #in~n; 161108#L25 assume ~n <= 0;#res := 1; 161109#factFINAL assume true; 161091#factEXIT >#70#return; 161085#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 161088#factENTRY ~n := #in~n; 161090#L25 assume ~n <= 0;#res := 1; 161089#factFINAL assume true; 161084#factEXIT >#72#return; 161082#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 161083#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 161078#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 161079#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 161058#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 160829#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 161001#factENTRY ~n := #in~n; 160998#L25 assume !(~n <= 0); 160794#L26 call #t~ret0 := fact(~n - 1);< 160806#factENTRY ~n := #in~n; 160823#L25 assume ~n <= 0;#res := 1; 160821#factFINAL assume true; 160807#factEXIT >#66#return; 160814#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 161095#factFINAL assume true; 161094#factEXIT >#74#return; 161047#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 161048#factENTRY ~n := #in~n; 161052#L25 assume ~n <= 0;#res := 1; 161050#factFINAL assume true; 161046#factEXIT >#76#return; 160965#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 160968#factENTRY ~n := #in~n; 161164#L25 assume !(~n <= 0); 160808#L26 call #t~ret0 := fact(~n - 1);< 160819#factENTRY ~n := #in~n; 160823#L25 assume ~n <= 0;#res := 1; 160821#factFINAL assume true; 160807#factEXIT >#66#return; 160813#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160964#factFINAL assume true; 160966#factEXIT >#78#return; 161045#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 161153#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 161152#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 161134#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 159257#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 159258#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 160328#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160265#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 159774#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159211#factENTRY ~n := #in~n; 159772#L25 assume !(~n <= 0); 159198#L26 call #t~ret0 := fact(~n - 1);< 159985#factENTRY ~n := #in~n; 160001#L25 assume !(~n <= 0); 159975#L26 call #t~ret0 := fact(~n - 1);< 159996#factENTRY ~n := #in~n; 159999#L25 assume ~n <= 0;#res := 1; 159997#factFINAL assume true; 159995#factEXIT >#66#return; 159993#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159992#factFINAL assume true; 159983#factEXIT >#66#return; 159982#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159979#factFINAL assume true; 159969#factEXIT >#68#return; 159726#L30-1 [2022-07-13 03:11:38,690 INFO L754 eck$LassoCheckResult]: Loop: 159726#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159641#factENTRY ~n := #in~n; 160237#L25 assume ~n <= 0;#res := 1; 160235#factFINAL assume true; 159723#factEXIT >#70#return; 159727#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 160021#factENTRY ~n := #in~n; 160034#L25 assume !(~n <= 0); 159853#L26 call #t~ret0 := fact(~n - 1);< 159879#factENTRY ~n := #in~n; 159886#L25 assume !(~n <= 0); 159852#L26 call #t~ret0 := fact(~n - 1);< 159883#factENTRY ~n := #in~n; 159888#L25 assume ~n <= 0;#res := 1; 159885#factFINAL assume true; 159881#factEXIT >#66#return; 159880#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159876#factFINAL assume true; 159868#factEXIT >#66#return; 159874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160217#factFINAL assume true; 159766#factEXIT >#72#return; 159767#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 160023#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160010#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159907#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159908#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 159733#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159735#factENTRY ~n := #in~n; 159899#L25 assume !(~n <= 0); 159679#L26 call #t~ret0 := fact(~n - 1);< 159859#factENTRY ~n := #in~n; 159886#L25 assume !(~n <= 0); 159852#L26 call #t~ret0 := fact(~n - 1);< 159883#factENTRY ~n := #in~n; 159888#L25 assume ~n <= 0;#res := 1; 159885#factFINAL assume true; 159881#factEXIT >#66#return; 159880#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159876#factFINAL assume true; 159868#factEXIT >#66#return; 159871#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160230#factFINAL assume true; 159731#factEXIT >#68#return; 159638#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159650#factENTRY ~n := #in~n; 160236#L25 assume !(~n <= 0); 159682#L26 call #t~ret0 := fact(~n - 1);< 159877#factENTRY ~n := #in~n; 159887#L25 assume !(~n <= 0); 159882#L26 call #t~ret0 := fact(~n - 1);< 159884#factENTRY ~n := #in~n; 159888#L25 assume ~n <= 0;#res := 1; 159885#factFINAL assume true; 159881#factEXIT >#66#return; 159880#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159876#factFINAL assume true; 159868#factEXIT >#66#return; 159873#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160190#factFINAL assume true; 160186#factEXIT >#70#return; 160179#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 160181#factENTRY ~n := #in~n; 160193#L25 assume ~n <= 0;#res := 1; 160184#factFINAL assume true; 160178#factEXIT >#72#return; 159671#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 160276#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160274#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160272#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159743#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 159734#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159735#factENTRY ~n := #in~n; 159899#L25 assume !(~n <= 0); 159679#L26 call #t~ret0 := fact(~n - 1);< 159859#factENTRY ~n := #in~n; 159886#L25 assume !(~n <= 0); 159852#L26 call #t~ret0 := fact(~n - 1);< 159883#factENTRY ~n := #in~n; 159888#L25 assume ~n <= 0;#res := 1; 159885#factFINAL assume true; 159881#factEXIT >#66#return; 159880#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159876#factFINAL assume true; 159868#factEXIT >#66#return; 159871#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160230#factFINAL assume true; 159731#factEXIT >#68#return; 159637#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159729#factENTRY ~n := #in~n; 159707#L25 assume !(~n <= 0); 159357#L26 call #t~ret0 := fact(~n - 1);< 159468#factENTRY ~n := #in~n; 159455#L25 assume !(~n <= 0); 159450#L26 call #t~ret0 := fact(~n - 1);< 159451#factENTRY ~n := #in~n; 159467#L25 assume ~n <= 0;#res := 1; 159454#factFINAL assume true; 159449#factEXIT >#66#return; 159434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159387#factFINAL assume true; 159394#factEXIT >#66#return; 159441#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160220#factFINAL assume true; 160219#factEXIT >#70#return; 159632#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159635#factENTRY ~n := #in~n; 159645#L25 assume ~n <= 0;#res := 1; 159644#factFINAL assume true; 159629#factEXIT >#72#return; 159634#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 160248#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160246#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160244#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160241#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 159294#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159350#factENTRY ~n := #in~n; 159440#L25 assume !(~n <= 0); 159369#L26 call #t~ret0 := fact(~n - 1);< 159435#factENTRY ~n := #in~n; 159436#L25 assume !(~n <= 0); 159390#L26 call #t~ret0 := fact(~n - 1);< 159452#factENTRY ~n := #in~n; 159436#L25 assume !(~n <= 0); 159390#L26 call #t~ret0 := fact(~n - 1);< 159452#factENTRY ~n := #in~n; 159467#L25 assume ~n <= 0;#res := 1; 159454#factFINAL assume true; 159449#factEXIT >#66#return; 159434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159387#factFINAL assume true; 159394#factEXIT >#66#return; 159447#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159588#factFINAL assume true; 159582#factEXIT >#66#return; 159353#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159351#factFINAL assume true; 159293#factEXIT >#74#return; 159333#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159430#factENTRY ~n := #in~n; 159458#L25 assume !(~n <= 0); 159381#L26 call #t~ret0 := fact(~n - 1);< 159386#factENTRY ~n := #in~n; 159455#L25 assume !(~n <= 0); 159450#L26 call #t~ret0 := fact(~n - 1);< 159451#factENTRY ~n := #in~n; 159467#L25 assume ~n <= 0;#res := 1; 159454#factFINAL assume true; 159449#factEXIT >#66#return; 159434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159387#factFINAL assume true; 159394#factEXIT >#66#return; 159446#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159619#factFINAL assume true; 159600#factEXIT >#76#return; 159427#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159429#factENTRY ~n := #in~n; 159423#L25 assume !(~n <= 0); 159364#L26 call #t~ret0 := fact(~n - 1);< 159395#factENTRY ~n := #in~n; 159432#L25 assume ~n <= 0;#res := 1; 159433#factFINAL assume true; 159354#factEXIT >#66#return; 159379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159609#factFINAL assume true; 159602#factEXIT >#78#return; 159604#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 159628#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 159625#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159621#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 159255#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 159256#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 160326#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160115#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 159773#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159211#factENTRY ~n := #in~n; 159772#L25 assume !(~n <= 0); 159198#L26 call #t~ret0 := fact(~n - 1);< 159985#factENTRY ~n := #in~n; 160001#L25 assume !(~n <= 0); 159975#L26 call #t~ret0 := fact(~n - 1);< 159996#factENTRY ~n := #in~n; 159999#L25 assume ~n <= 0;#res := 1; 159997#factFINAL assume true; 159995#factEXIT >#66#return; 159993#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159992#factFINAL assume true; 159983#factEXIT >#66#return; 159982#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159979#factFINAL assume true; 159969#factEXIT >#68#return; 159726#L30-1 [2022-07-13 03:11:38,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:38,691 INFO L85 PathProgramCache]: Analyzing trace with hash 695535660, now seen corresponding path program 16 times [2022-07-13 03:11:38,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:38,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [10741090] [2022-07-13 03:11:38,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:38,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:38,697 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:38,697 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2110434438] [2022-07-13 03:11:38,697 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:38,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:38,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:38,700 INFO L229 MonitoredProcess]: Starting monitored process 118 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:11:38,701 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (118)] Waiting until timeout for monitored process [2022-07-13 03:11:38,862 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:38,862 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:38,863 INFO L263 TraceCheckSpWp]: Trace formula consists of 325 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-13 03:11:38,865 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:38,916 INFO L134 CoverageAnalysis]: Checked inductivity of 767 backedges. 442 proven. 1 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2022-07-13 03:11:38,917 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:39,038 INFO L134 CoverageAnalysis]: Checked inductivity of 767 backedges. 66 proven. 31 refuted. 0 times theorem prover too weak. 670 trivial. 0 not checked. [2022-07-13 03:11:39,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:39,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [10741090] [2022-07-13 03:11:39,039 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:39,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2110434438] [2022-07-13 03:11:39,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2110434438] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:39,039 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:39,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2022-07-13 03:11:39,039 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1860570347] [2022-07-13 03:11:39,040 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:39,040 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:39,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:39,040 INFO L85 PathProgramCache]: Analyzing trace with hash -866671284, now seen corresponding path program 16 times [2022-07-13 03:11:39,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:39,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1883421643] [2022-07-13 03:11:39,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:39,040 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:39,046 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:39,046 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [675654320] [2022-07-13 03:11:39,046 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:11:39,046 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:39,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:39,049 INFO L229 MonitoredProcess]: Starting monitored process 119 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:11:39,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (119)] Waiting until timeout for monitored process [2022-07-13 03:11:39,180 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:11:39,181 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:39,182 INFO L263 TraceCheckSpWp]: Trace formula consists of 428 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-13 03:11:39,185 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:39,354 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 1094 proven. 60 refuted. 0 times theorem prover too weak. 929 trivial. 0 not checked. [2022-07-13 03:11:39,354 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:39,961 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 114 proven. 446 refuted. 0 times theorem prover too weak. 1523 trivial. 0 not checked. [2022-07-13 03:11:39,962 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:39,962 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1883421643] [2022-07-13 03:11:39,962 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:39,962 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [675654320] [2022-07-13 03:11:39,962 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [675654320] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:39,962 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:39,962 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 16] total 22 [2022-07-13 03:11:39,962 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018365846] [2022-07-13 03:11:39,962 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:39,963 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:39,963 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:39,963 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-13 03:11:39,963 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-07-13 03:11:39,963 INFO L87 Difference]: Start difference. First operand 1989 states and 3048 transitions. cyclomatic complexity: 1089 Second operand has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 8 states have internal predecessors, (44), 4 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-07-13 03:11:40,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:40,154 INFO L93 Difference]: Finished difference Result 1517 states and 2386 transitions. [2022-07-13 03:11:40,155 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-13 03:11:40,157 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1517 states and 2386 transitions. [2022-07-13 03:11:40,167 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 414 [2022-07-13 03:11:40,175 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1517 states to 1318 states and 2118 transitions. [2022-07-13 03:11:40,175 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 692 [2022-07-13 03:11:40,176 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 698 [2022-07-13 03:11:40,176 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1318 states and 2118 transitions. [2022-07-13 03:11:40,176 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:40,176 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1318 states and 2118 transitions. [2022-07-13 03:11:40,177 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1318 states and 2118 transitions. [2022-07-13 03:11:40,196 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1318 to 1318. [2022-07-13 03:11:40,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1318 states, 830 states have (on average 1.0975903614457831) internal successors, (911), 813 states have internal predecessors, (911), 361 states have call successors, (367), 135 states have call predecessors, (367), 127 states have return successors, (840), 369 states have call predecessors, (840), 361 states have call successors, (840) [2022-07-13 03:11:40,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1318 states to 1318 states and 2118 transitions. [2022-07-13 03:11:40,203 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1318 states and 2118 transitions. [2022-07-13 03:11:40,203 INFO L374 stractBuchiCegarLoop]: Abstraction has 1318 states and 2118 transitions. [2022-07-13 03:11:40,203 INFO L287 stractBuchiCegarLoop]: ======== Iteration 31 ============ [2022-07-13 03:11:40,203 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1318 states and 2118 transitions. [2022-07-13 03:11:40,208 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 414 [2022-07-13 03:11:40,209 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:40,209 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:40,210 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [29, 29, 16, 13, 13, 13, 13, 6, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:40,210 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [9, 9, 6, 6, 6, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:40,210 INFO L752 eck$LassoCheckResult]: Stem: 164771#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 164735#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 164736#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 164770#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 164803#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 165231#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165229#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 165226#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 165227#factENTRY ~n := #in~n; 165230#L25 assume ~n <= 0;#res := 1; 165228#factFINAL assume true; 165225#factEXIT >#68#return; 165141#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 165142#factENTRY ~n := #in~n; 165169#L25 assume ~n <= 0;#res := 1; 165167#factFINAL assume true; 165140#factEXIT >#70#return; 165134#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 165135#factENTRY ~n := #in~n; 165148#L25 assume ~n <= 0;#res := 1; 165147#factFINAL assume true; 165133#factEXIT >#72#return; 165118#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 165116#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 165114#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 165112#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165109#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 165037#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 165038#factENTRY ~n := #in~n; 165077#L25 assume !(~n <= 0); 165048#L26 call #t~ret0 := fact(~n - 1);< 165073#factENTRY ~n := #in~n; 165078#L25 assume ~n <= 0;#res := 1; 165076#factFINAL assume true; 165072#factEXIT >#66#return; 165069#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165065#factFINAL assume true; 165036#factEXIT >#74#return; 165028#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 165030#factENTRY ~n := #in~n; 165033#L25 assume ~n <= 0;#res := 1; 165032#factFINAL assume true; 165026#factEXIT >#76#return; 164805#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 164806#factENTRY ~n := #in~n; 165224#L25 assume !(~n <= 0); 165058#L26 call #t~ret0 := fact(~n - 1);< 165060#factENTRY ~n := #in~n; 165092#L25 assume ~n <= 0;#res := 1; 165091#factFINAL assume true; 165057#factEXIT >#66#return; 165056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165054#factFINAL assume true; 165034#factEXIT >#78#return; 164986#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 164985#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 164983#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 164982#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 164977#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 164974#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 164975#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165348#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 165341#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 165342#factENTRY ~n := #in~n; 165361#L25 assume !(~n <= 0); 165355#L26 call #t~ret0 := fact(~n - 1);< 165356#factENTRY ~n := #in~n; 165373#L25 assume ~n <= 0;#res := 1; 165371#factFINAL assume true; 165354#factEXIT >#66#return; 165352#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165350#factFINAL assume true; 165347#factEXIT >#68#return; 165335#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 164796#factENTRY ~n := #in~n; 165421#L25 assume ~n <= 0;#res := 1; 165346#factFINAL assume true; 165334#factEXIT >#70#return; 165297#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 165308#factENTRY ~n := #in~n; 165394#L25 assume !(~n <= 0); 165272#L26 call #t~ret0 := fact(~n - 1);< 165280#factENTRY ~n := #in~n; 165372#L25 assume ~n <= 0;#res := 1; 165344#factFINAL assume true; 165328#factEXIT >#66#return; 165327#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165323#factFINAL assume true; 165315#factEXIT >#72#return; 165316#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 164768#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 164769#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 164792#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 164793#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 164717#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 164729#factENTRY ~n := #in~n; 165412#L25 assume !(~n <= 0); 165329#L26 call #t~ret0 := fact(~n - 1);< 165343#factENTRY ~n := #in~n; 165372#L25 assume ~n <= 0;#res := 1; 165344#factFINAL assume true; 165328#factEXIT >#66#return; 165333#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 164726#factFINAL assume true; 164714#factEXIT >#68#return; 164720#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 165586#factENTRY ~n := #in~n; 165603#L25 assume !(~n <= 0); 165592#L26 call #t~ret0 := fact(~n - 1);< 165600#factENTRY ~n := #in~n; 165611#L25 assume ~n <= 0;#res := 1; 165607#factFINAL assume true; 165591#factEXIT >#66#return; 165590#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165588#factFINAL assume true; 165585#factEXIT >#70#return; 165580#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 165583#factENTRY ~n := #in~n; 165606#L25 assume ~n <= 0;#res := 1; 165605#factFINAL assume true; 165576#factEXIT >#72#return; 165558#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 165555#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 165550#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 165549#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165524#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 165471#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 165521#factENTRY ~n := #in~n; 165624#L25 assume !(~n <= 0); 165537#L26 call #t~ret0 := fact(~n - 1);< 165610#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165587#L25 assume ~n <= 0;#res := 1; 165584#factFINAL assume true; 165559#factEXIT >#66#return; 165556#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165551#factFINAL assume true; 165525#factEXIT >#66#return; 165523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165520#factFINAL assume true; 165505#factEXIT >#74#return; 165518#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 165869#factENTRY ~n := #in~n; 165870#L25 assume !(~n <= 0); 165531#L26 call #t~ret0 := fact(~n - 1);< 165601#factENTRY ~n := #in~n; 165611#L25 assume ~n <= 0;#res := 1; 165607#factFINAL assume true; 165591#factEXIT >#66#return; 165596#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165913#factFINAL assume true; 165904#factEXIT >#76#return; 164781#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 164804#factENTRY ~n := #in~n; 164780#L25 assume !(~n <= 0); 164783#L26 call #t~ret0 := fact(~n - 1);< 165600#factENTRY ~n := #in~n; 165611#L25 assume ~n <= 0;#res := 1; 165607#factFINAL assume true; 165591#factEXIT >#66#return; 165596#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165913#factFINAL assume true; 165904#factEXIT >#78#return; 165905#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 165922#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 165906#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 165882#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165868#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 164677#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 164678#factENTRY ~n := #in~n; 165912#L25 assume !(~n <= 0); 165529#L26 call #t~ret0 := fact(~n - 1);< 165610#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165587#L25 assume ~n <= 0;#res := 1; 165584#factFINAL assume true; 165559#factEXIT >#66#return; 165556#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165551#factFINAL assume true; 165525#factEXIT >#66#return; 165547#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165662#factFINAL assume true; 165656#factEXIT >#66#return; 165657#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165908#factFINAL assume true; 165907#factEXIT >#74#return; 165613#L30-6 [2022-07-13 03:11:40,211 INFO L754 eck$LassoCheckResult]: Loop: 165613#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 165869#factENTRY ~n := #in~n; 165870#L25 assume ~n <= 0;#res := 1; 165910#factFINAL assume true; 165903#factEXIT >#76#return; 165552#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 165909#factENTRY ~n := #in~n; 165768#L25 assume !(~n <= 0); 165528#L26 call #t~ret0 := fact(~n - 1);< 165553#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165587#L25 assume ~n <= 0;#res := 1; 165584#factFINAL assume true; 165559#factEXIT >#66#return; 165556#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165551#factFINAL assume true; 165525#factEXIT >#66#return; 165547#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165662#factFINAL assume true; 165656#factEXIT >#66#return; 165657#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165908#factFINAL assume true; 165907#factEXIT >#78#return; 165872#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 165918#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 165917#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 165916#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 165915#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 165609#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 164678#factENTRY ~n := #in~n; 165912#L25 assume !(~n <= 0); 165529#L26 call #t~ret0 := fact(~n - 1);< 165610#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165564#L25 assume !(~n <= 0); 165540#L26 call #t~ret0 := fact(~n - 1);< 165562#factENTRY ~n := #in~n; 165587#L25 assume ~n <= 0;#res := 1; 165584#factFINAL assume true; 165559#factEXIT >#66#return; 165556#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165551#factFINAL assume true; 165525#factEXIT >#66#return; 165547#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165662#factFINAL assume true; 165656#factEXIT >#66#return; 165657#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 165908#factFINAL assume true; 165907#factEXIT >#74#return; 165613#L30-6 [2022-07-13 03:11:40,211 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:40,211 INFO L85 PathProgramCache]: Analyzing trace with hash -1332621012, now seen corresponding path program 17 times [2022-07-13 03:11:40,211 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:40,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1978246752] [2022-07-13 03:11:40,211 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:40,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:40,218 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:40,218 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [763899352] [2022-07-13 03:11:40,219 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:40,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:40,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:40,225 INFO L229 MonitoredProcess]: Starting monitored process 120 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:11:40,226 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (120)] Waiting until timeout for monitored process [2022-07-13 03:11:40,372 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2022-07-13 03:11:40,372 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:40,374 INFO L263 TraceCheckSpWp]: Trace formula consists of 419 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-13 03:11:40,377 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:40,506 INFO L134 CoverageAnalysis]: Checked inductivity of 1849 backedges. 966 proven. 36 refuted. 0 times theorem prover too weak. 847 trivial. 0 not checked. [2022-07-13 03:11:40,506 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:40,743 INFO L134 CoverageAnalysis]: Checked inductivity of 1849 backedges. 82 proven. 91 refuted. 0 times theorem prover too weak. 1676 trivial. 0 not checked. [2022-07-13 03:11:40,743 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:40,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1978246752] [2022-07-13 03:11:40,743 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:40,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [763899352] [2022-07-13 03:11:40,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [763899352] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:40,743 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:40,743 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 15 [2022-07-13 03:11:40,744 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1960081303] [2022-07-13 03:11:40,744 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:40,744 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:40,744 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:40,744 INFO L85 PathProgramCache]: Analyzing trace with hash 1836996868, now seen corresponding path program 2 times [2022-07-13 03:11:40,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:40,744 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [236836312] [2022-07-13 03:11:40,744 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:40,745 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:40,749 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:40,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1613086483] [2022-07-13 03:11:40,749 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:11:40,749 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:40,749 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:40,755 INFO L229 MonitoredProcess]: Starting monitored process 121 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:11:40,777 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (121)] Waiting until timeout for monitored process [2022-07-13 03:11:40,853 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:11:40,853 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:40,853 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:40,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:40,876 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:41,776 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:41,776 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:41,776 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:41,776 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:41,776 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:11:41,776 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:41,776 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:41,776 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:41,776 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration31_Loop [2022-07-13 03:11:41,776 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:41,776 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:41,777 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:11:41,778 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:11:41,804 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:11:41,805 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:11:41,806 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:11:41,808 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:11:41,910 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:41,910 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:11:41,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:41,910 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:41,912 INFO L229 MonitoredProcess]: Starting monitored process 122 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:11:41,912 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Waiting until timeout for monitored process [2022-07-13 03:11:41,914 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:41,914 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:41,920 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:41,920 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret10#1=0} Honda state: {ULTIMATE.start_main_#t~ret10#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:41,935 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Ended with exit code 0 [2022-07-13 03:11:41,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:41,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:41,937 INFO L229 MonitoredProcess]: Starting monitored process 123 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:11:41,937 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (123)] Waiting until timeout for monitored process [2022-07-13 03:11:41,939 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:41,939 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:41,963 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (123)] Ended with exit code 0 [2022-07-13 03:11:41,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:41,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:41,965 INFO L229 MonitoredProcess]: Starting monitored process 124 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:11:41,966 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (124)] Waiting until timeout for monitored process [2022-07-13 03:11:41,967 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:11:41,967 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:41,997 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:11:42,027 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (124)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:42,027 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:42,027 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:42,028 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:42,028 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:42,028 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:11:42,028 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:42,028 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:42,028 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:42,028 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration31_Loop [2022-07-13 03:11:42,028 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:42,028 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:42,029 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:11:42,030 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:11:42,032 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:11:42,062 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:11:42,063 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:11:42,064 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:11:42,163 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:42,163 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:42,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:42,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:42,165 INFO L229 MonitoredProcess]: Starting monitored process 125 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:11:42,166 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Waiting until timeout for monitored process [2022-07-13 03:11:42,168 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:11:42,173 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:42,173 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:42,173 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:42,173 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:42,173 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:42,173 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:42,173 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:42,174 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:42,190 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:42,190 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:42,190 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:42,192 INFO L229 MonitoredProcess]: Starting monitored process 126 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:11:42,192 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Waiting until timeout for monitored process [2022-07-13 03:11:42,193 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:11:42,198 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:42,199 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:42,199 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:42,199 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:42,199 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:42,199 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:42,199 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:42,200 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:42,215 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Ended with exit code 0 [2022-07-13 03:11:42,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:42,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:42,217 INFO L229 MonitoredProcess]: Starting monitored process 127 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:11:42,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Waiting until timeout for monitored process [2022-07-13 03:11:42,219 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:11:42,224 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:42,224 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:42,224 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:42,224 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:42,225 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:42,226 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:42,227 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:42,229 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:42,232 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:11:42,232 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-13 03:11:42,232 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:42,232 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:42,235 INFO L229 MonitoredProcess]: Starting monitored process 128 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:11:42,238 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Waiting until timeout for monitored process [2022-07-13 03:11:42,239 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:42,239 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:42,239 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:42,239 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 5 Supporting invariants [] [2022-07-13 03:11:42,254 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Ended with exit code 0 [2022-07-13 03:11:42,255 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:42,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:42,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:42,420 INFO L263 TraceCheckSpWp]: Trace formula consists of 1266 conjuncts, 60 conjunts are in the unsatisfiable core [2022-07-13 03:11:42,425 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:43,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:43,261 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 32 conjunts are in the unsatisfiable core [2022-07-13 03:11:43,263 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:43,651 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 78 proven. 15 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2022-07-13 03:11:43,652 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 9 loop predicates [2022-07-13 03:11:43,652 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823 Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:44,103 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823. Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) Result 1647 states and 2603 transitions. Complement of second has 55 states. [2022-07-13 03:11:44,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 12 states 2 stem states 9 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:44,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:44,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 77 transitions. [2022-07-13 03:11:44,105 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 12 states and 77 transitions. Stem has 193 letters. Loop has 56 letters. [2022-07-13 03:11:44,106 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:44,106 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:44,114 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:44,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:44,291 INFO L263 TraceCheckSpWp]: Trace formula consists of 1266 conjuncts, 60 conjunts are in the unsatisfiable core [2022-07-13 03:11:44,295 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:44,484 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:45,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:45,222 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 32 conjunts are in the unsatisfiable core [2022-07-13 03:11:45,223 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:45,542 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 78 proven. 15 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2022-07-13 03:11:45,543 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 9 loop predicates [2022-07-13 03:11:45,543 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823 Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:45,935 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823. Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) Result 1647 states and 2603 transitions. Complement of second has 55 states. [2022-07-13 03:11:45,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 12 states 2 stem states 9 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:45,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:45,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 77 transitions. [2022-07-13 03:11:45,937 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 12 states and 77 transitions. Stem has 193 letters. Loop has 56 letters. [2022-07-13 03:11:45,938 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:45,938 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:45,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:46,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:46,112 INFO L263 TraceCheckSpWp]: Trace formula consists of 1266 conjuncts, 60 conjunts are in the unsatisfiable core [2022-07-13 03:11:46,116 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:46,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:46,974 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 32 conjunts are in the unsatisfiable core [2022-07-13 03:11:46,975 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:47,306 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 78 proven. 15 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2022-07-13 03:11:47,307 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 9 loop predicates [2022-07-13 03:11:47,307 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823 Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:47,875 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1318 states and 2118 transitions. cyclomatic complexity: 823. Second operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) Result 3246 states and 4820 transitions. Complement of second has 94 states. [2022-07-13 03:11:47,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 12 states 2 stem states 9 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:47,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 4.0) internal successors, (40), 11 states have internal predecessors, (40), 7 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (15), 8 states have call predecessors, (15), 7 states have call successors, (15) [2022-07-13 03:11:47,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 113 transitions. [2022-07-13 03:11:47,878 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 12 states and 113 transitions. Stem has 193 letters. Loop has 56 letters. [2022-07-13 03:11:47,878 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:47,878 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 12 states and 113 transitions. Stem has 249 letters. Loop has 56 letters. [2022-07-13 03:11:47,879 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:47,879 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 12 states and 113 transitions. Stem has 193 letters. Loop has 112 letters. [2022-07-13 03:11:47,880 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:47,881 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3246 states and 4820 transitions. [2022-07-13 03:11:47,904 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 647 [2022-07-13 03:11:47,976 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3246 states to 2692 states and 4011 transitions. [2022-07-13 03:11:47,976 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1028 [2022-07-13 03:11:47,978 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1071 [2022-07-13 03:11:47,978 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2692 states and 4011 transitions. [2022-07-13 03:11:47,978 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:47,979 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2692 states and 4011 transitions. [2022-07-13 03:11:47,980 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2692 states and 4011 transitions. [2022-07-13 03:11:48,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2692 to 2502. [2022-07-13 03:11:48,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2502 states, 1577 states have (on average 1.0805326569435638) internal successors, (1704), 1570 states have internal predecessors, (1704), 621 states have call successors, (657), 277 states have call predecessors, (657), 304 states have return successors, (1384), 654 states have call predecessors, (1384), 621 states have call successors, (1384) [2022-07-13 03:11:48,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2502 states to 2502 states and 3745 transitions. [2022-07-13 03:11:48,028 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2502 states and 3745 transitions. [2022-07-13 03:11:48,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:48,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-07-13 03:11:48,029 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2022-07-13 03:11:48,029 INFO L87 Difference]: Start difference. First operand 2502 states and 3745 transitions. Second operand has 15 states, 13 states have (on average 4.153846153846154) internal successors, (54), 15 states have internal predecessors, (54), 10 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (24), 10 states have call predecessors, (24), 10 states have call successors, (24) [2022-07-13 03:11:48,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:48,860 INFO L93 Difference]: Finished difference Result 3236 states and 5030 transitions. [2022-07-13 03:11:48,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-07-13 03:11:48,862 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3236 states and 5030 transitions. [2022-07-13 03:11:48,882 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 883 [2022-07-13 03:11:48,907 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3236 states to 3091 states and 4840 transitions. [2022-07-13 03:11:48,908 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1418 [2022-07-13 03:11:48,909 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1418 [2022-07-13 03:11:48,909 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3091 states and 4840 transitions. [2022-07-13 03:11:48,910 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:48,910 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3091 states and 4840 transitions. [2022-07-13 03:11:48,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3091 states and 4840 transitions. [2022-07-13 03:11:48,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3091 to 2464. [2022-07-13 03:11:48,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2464 states, 1554 states have (on average 1.0785070785070785) internal successors, (1676), 1544 states have internal predecessors, (1676), 614 states have call successors, (650), 273 states have call predecessors, (650), 296 states have return successors, (1373), 646 states have call predecessors, (1373), 614 states have call successors, (1373) [2022-07-13 03:11:48,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2464 states to 2464 states and 3699 transitions. [2022-07-13 03:11:48,974 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2464 states and 3699 transitions. [2022-07-13 03:11:48,974 INFO L374 stractBuchiCegarLoop]: Abstraction has 2464 states and 3699 transitions. [2022-07-13 03:11:48,974 INFO L287 stractBuchiCegarLoop]: ======== Iteration 32 ============ [2022-07-13 03:11:48,974 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2464 states and 3699 transitions. [2022-07-13 03:11:48,982 INFO L131 ngComponentsAnalysis]: Automaton has 11 accepting balls. 608 [2022-07-13 03:11:48,983 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:48,983 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:48,985 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [34, 34, 19, 15, 15, 15, 15, 7, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2022-07-13 03:11:48,985 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [32, 32, 20, 20, 20, 20, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:48,985 INFO L752 eck$LassoCheckResult]: Stem: 182067#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 182039#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 182040#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 182066#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 182086#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 182687#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182686#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182684#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182685#factENTRY ~n := #in~n; 182689#L25 assume ~n <= 0;#res := 1; 182688#factFINAL assume true; 182683#factEXIT >#68#return; 182680#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182681#factENTRY ~n := #in~n; 182692#L25 assume ~n <= 0;#res := 1; 182691#factFINAL assume true; 182679#factEXIT >#70#return; 182675#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182676#factENTRY ~n := #in~n; 182690#L25 assume ~n <= 0;#res := 1; 182678#factFINAL assume true; 182674#factEXIT >#72#return; 182673#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182671#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 182668#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182660#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182657#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182653#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182654#factENTRY ~n := #in~n; 182667#L25 assume !(~n <= 0); 182665#L26 call #t~ret0 := fact(~n - 1);< 182666#factENTRY ~n := #in~n; 182672#L25 assume ~n <= 0;#res := 1; 182670#factFINAL assume true; 182664#factEXIT >#66#return; 182659#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182656#factFINAL assume true; 182652#factEXIT >#74#return; 182645#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182647#factENTRY ~n := #in~n; 182669#L25 assume ~n <= 0;#res := 1; 182662#factFINAL assume true; 182641#factEXIT >#76#return; 182608#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182612#factENTRY ~n := #in~n; 182739#L25 assume !(~n <= 0); 182625#L26 call #t~ret0 := fact(~n - 1);< 182631#factENTRY ~n := #in~n; 182640#L25 assume ~n <= 0;#res := 1; 182634#factFINAL assume true; 182618#factEXIT >#66#return; 182617#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182615#factFINAL assume true; 182606#factEXIT >#78#return; 182605#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182602#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 182599#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182596#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182590#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182559#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182561#factENTRY ~n := #in~n; 182578#L25 assume !(~n <= 0); 182574#L26 call #t~ret0 := fact(~n - 1);< 182575#factENTRY ~n := #in~n; 182595#L25 assume ~n <= 0;#res := 1; 182707#factFINAL assume true; 182706#factEXIT >#66#return; 182705#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182704#factFINAL assume true; 182703#factEXIT >#74#return; 182698#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182699#factENTRY ~n := #in~n; 182700#L25 assume ~n <= 0;#res := 1; 182633#factFINAL assume true; 182697#factEXIT >#76#return; 182484#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182544#factENTRY ~n := #in~n; 182543#L25 assume !(~n <= 0); 182492#L26 call #t~ret0 := fact(~n - 1);< 182514#factENTRY ~n := #in~n; 182508#L25 assume ~n <= 0;#res := 1; 182509#factFINAL assume true; 182488#factEXIT >#66#return; 182499#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182555#factFINAL assume true; 182551#factEXIT >#78#return; 182447#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182446#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 182445#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182444#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 182442#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 182438#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 182434#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182432#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182429#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182430#factENTRY ~n := #in~n; 182441#L25 assume !(~n <= 0); 182436#L26 call #t~ret0 := fact(~n - 1);< 182437#factENTRY ~n := #in~n; 182443#L25 assume ~n <= 0;#res := 1; 182440#factFINAL assume true; 182435#factEXIT >#66#return; 182433#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182431#factFINAL assume true; 182428#factEXIT >#68#return; 182425#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182326#factENTRY ~n := #in~n; 182427#L25 assume ~n <= 0;#res := 1; 182426#factFINAL assume true; 182424#factEXIT >#70#return; 182378#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182380#factENTRY ~n := #in~n; 182377#L25 assume !(~n <= 0); 182368#L26 call #t~ret0 := fact(~n - 1);< 182468#factENTRY ~n := #in~n; 182376#L25 assume ~n <= 0;#res := 1; 182373#factFINAL assume true; 182367#factEXIT >#66#return; 182371#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182423#factFINAL assume true; 182420#factEXIT >#72#return; 182419#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182418#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 182417#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182416#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182400#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182361#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182364#factENTRY ~n := #in~n; 182375#L25 assume !(~n <= 0); 182369#L26 call #t~ret0 := fact(~n - 1);< 182372#factENTRY ~n := #in~n; 182376#L25 assume ~n <= 0;#res := 1; 182373#factFINAL assume true; 182367#factEXIT >#66#return; 182366#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182365#factFINAL assume true; 182358#factEXIT >#68#return; 182318#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182324#factENTRY ~n := #in~n; 182320#L25 assume !(~n <= 0); 182311#L26 call #t~ret0 := fact(~n - 1);< 182319#factENTRY ~n := #in~n; 182323#L25 assume ~n <= 0;#res := 1; 182317#factFINAL assume true; 182310#factEXIT >#66#return; 182313#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182403#factFINAL assume true; 182401#factEXIT >#70#return; 182382#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182383#factENTRY ~n := #in~n; 182385#L25 assume ~n <= 0;#res := 1; 182384#factFINAL assume true; 182381#factEXIT >#72#return; 182357#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182356#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 182294#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182292#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 182289#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182285#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182286#factENTRY ~n := #in~n; 182321#L25 assume !(~n <= 0); 182312#L26 call #t~ret0 := fact(~n - 1);< 182314#factENTRY ~n := #in~n; 182330#L25 assume !(~n <= 0); 182316#L26 call #t~ret0 := fact(~n - 1);< 182328#factENTRY ~n := #in~n; 182331#L25 assume ~n <= 0;#res := 1; 182329#factFINAL assume true; 182327#factEXIT >#66#return; 182325#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182322#factFINAL assume true; 182315#factEXIT >#66#return; 182309#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182306#factFINAL assume true; 182303#factEXIT >#74#return; 182145#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182158#factENTRY ~n := #in~n; 182168#L25 assume !(~n <= 0); 182113#L26 call #t~ret0 := fact(~n - 1);< 182141#factENTRY ~n := #in~n; 182127#L25 assume ~n <= 0;#res := 1; 182128#factFINAL assume true; 182107#factEXIT >#66#return; 182119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182245#factFINAL assume true; 182175#factEXIT >#76#return; 182132#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 182151#factENTRY ~n := #in~n; 182149#L25 assume !(~n <= 0); 182109#L26 call #t~ret0 := fact(~n - 1);< 182131#factENTRY ~n := #in~n; 182127#L25 assume ~n <= 0;#res := 1; 182128#factFINAL assume true; 182107#factEXIT >#66#return; 182117#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182277#factFINAL assume true; 182255#factEXIT >#78#return; 182093#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 182092#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 182091#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 182089#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 182065#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 182054#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 182056#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184222#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182020#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 184220#factENTRY ~n := #in~n; 184232#L25 assume !(~n <= 0); 184230#L26 call #t~ret0 := fact(~n - 1);< 184231#factENTRY ~n := #in~n; 184245#L25 assume !(~n <= 0); 184238#L26 call #t~ret0 := fact(~n - 1);< 184247#factENTRY ~n := #in~n; 184245#L25 assume !(~n <= 0); 184238#L26 call #t~ret0 := fact(~n - 1);< 184247#factENTRY ~n := #in~n; 184250#L25 assume ~n <= 0;#res := 1; 184248#factFINAL assume true; 184246#factEXIT >#66#return; 184244#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184237#factFINAL assume true; 184240#factEXIT >#66#return; 184331#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184434#factFINAL assume true; 184432#factEXIT >#66#return; 184433#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182018#factFINAL assume true; 182023#factEXIT >#68#return; 182029#L30-1 [2022-07-13 03:11:48,985 INFO L754 eck$LassoCheckResult]: Loop: 182029#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 182028#factENTRY ~n := #in~n; 182035#L25 assume ~n <= 0;#res := 1; 182077#factFINAL assume true; 184425#factEXIT >#70#return; 181995#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183963#factENTRY ~n := #in~n; 183964#L25 assume !(~n <= 0); 183148#L26 call #t~ret0 := fact(~n - 1);< 183165#factENTRY ~n := #in~n; 183181#L25 assume !(~n <= 0); 183149#L26 call #t~ret0 := fact(~n - 1);< 183174#factENTRY ~n := #in~n; 183179#L25 assume ~n <= 0;#res := 1; 183176#factFINAL assume true; 183172#factEXIT >#66#return; 183171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183164#factFINAL assume true; 183147#factEXIT >#66#return; 182071#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182072#factFINAL assume true; 181993#factEXIT >#72#return; 182000#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 184446#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 184349#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184262#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184261#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 183218#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183264#factENTRY ~n := #in~n; 183265#L25 assume !(~n <= 0); 183167#L26 call #t~ret0 := fact(~n - 1);< 183210#factENTRY ~n := #in~n; 183207#L25 assume !(~n <= 0); 183150#L26 call #t~ret0 := fact(~n - 1);< 183169#factENTRY ~n := #in~n; 183181#L25 assume !(~n <= 0); 183149#L26 call #t~ret0 := fact(~n - 1);< 183174#factENTRY ~n := #in~n; 183179#L25 assume ~n <= 0;#res := 1; 183176#factFINAL assume true; 183172#factEXIT >#66#return; 183171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183164#factFINAL assume true; 183147#factEXIT >#66#return; 183159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183464#factFINAL assume true; 183457#factEXIT >#66#return; 183460#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183776#factFINAL assume true; 183771#factEXIT >#68#return; 183760#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183970#factENTRY ~n := #in~n; 184410#L25 assume !(~n <= 0); 183158#L26 call #t~ret0 := fact(~n - 1);< 183163#factENTRY ~n := #in~n; 183212#L25 assume ~n <= 0;#res := 1; 183929#factFINAL assume true; 183921#factEXIT >#66#return; 183926#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184177#factFINAL assume true; 184176#factEXIT >#70#return; 183490#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183513#factENTRY ~n := #in~n; 184000#L25 assume ~n <= 0;#res := 1; 183514#factFINAL assume true; 183481#factEXIT >#72#return; 183504#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 184416#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 184078#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184075#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184072#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 183223#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183264#factENTRY ~n := #in~n; 183265#L25 assume !(~n <= 0); 183167#L26 call #t~ret0 := fact(~n - 1);< 183210#factENTRY ~n := #in~n; 183207#L25 assume !(~n <= 0); 183150#L26 call #t~ret0 := fact(~n - 1);< 183169#factENTRY ~n := #in~n; 183181#L25 assume !(~n <= 0); 183149#L26 call #t~ret0 := fact(~n - 1);< 183174#factENTRY ~n := #in~n; 183179#L25 assume ~n <= 0;#res := 1; 183176#factFINAL assume true; 183172#factEXIT >#66#return; 183171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183164#factFINAL assume true; 183147#factEXIT >#66#return; 183159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183464#factFINAL assume true; 183457#factEXIT >#66#return; 183460#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183776#factFINAL assume true; 183771#factEXIT >#68#return; 183775#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183883#factENTRY ~n := #in~n; 183858#L25 assume !(~n <= 0); 183152#L26 call #t~ret0 := fact(~n - 1);< 183211#factENTRY ~n := #in~n; 183208#L25 assume !(~n <= 0); 183173#L26 call #t~ret0 := fact(~n - 1);< 183175#factENTRY ~n := #in~n; 183179#L25 assume ~n <= 0;#res := 1; 183176#factFINAL assume true; 183172#factEXIT >#66#return; 183171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183164#factFINAL assume true; 183147#factEXIT >#66#return; 183160#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183974#factFINAL assume true; 183973#factEXIT >#70#return; 183497#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183513#factENTRY ~n := #in~n; 184000#L25 assume ~n <= 0;#res := 1; 183514#factFINAL assume true; 183481#factEXIT >#72#return; 183479#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 183477#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 183463#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 183456#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 183454#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 183252#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183285#factENTRY ~n := #in~n; 183251#L25 assume !(~n <= 0); 183166#L26 call #t~ret0 := fact(~n - 1);< 183210#factENTRY ~n := #in~n; 183207#L25 assume !(~n <= 0); 183150#L26 call #t~ret0 := fact(~n - 1);< 183169#factENTRY ~n := #in~n; 183181#L25 assume !(~n <= 0); 183149#L26 call #t~ret0 := fact(~n - 1);< 183174#factENTRY ~n := #in~n; 183179#L25 assume ~n <= 0;#res := 1; 183176#factFINAL assume true; 183172#factEXIT >#66#return; 183171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183164#factFINAL assume true; 183147#factEXIT >#66#return; 183159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183464#factFINAL assume true; 183457#factEXIT >#66#return; 183455#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183453#factFINAL assume true; 183452#factEXIT >#74#return; 182954#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183450#factENTRY ~n := #in~n; 184117#L25 assume !(~n <= 0); 182949#L26 call #t~ret0 := fact(~n - 1);< 182956#factENTRY ~n := #in~n; 183039#L25 assume !(~n <= 0); 183033#L26 call #t~ret0 := fact(~n - 1);< 183034#factENTRY ~n := #in~n; 183038#L25 assume ~n <= 0;#res := 1; 183037#factFINAL assume true; 183032#factEXIT >#66#return; 183029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183020#factFINAL assume true; 183006#factEXIT >#66#return; 183009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184123#factFINAL assume true; 184121#factEXIT >#76#return; 184088#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 184103#factENTRY ~n := #in~n; 184116#L25 assume !(~n <= 0); 182982#L26 call #t~ret0 := fact(~n - 1);< 182947#factENTRY ~n := #in~n; 182974#L25 assume ~n <= 0;#res := 1; 182987#factFINAL assume true; 182997#factEXIT >#66#return; 183005#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184104#factFINAL assume true; 184086#factEXIT >#78#return; 184097#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 184136#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 184134#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184132#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 182063#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 182064#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 184271#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184272#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 182014#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 182015#factENTRY ~n := #in~n; 184165#L25 assume !(~n <= 0); 184166#L26 call #t~ret0 := fact(~n - 1);< 184251#factENTRY ~n := #in~n; 184249#L25 assume !(~n <= 0); 184239#L26 call #t~ret0 := fact(~n - 1);< 184241#factENTRY ~n := #in~n; 184245#L25 assume !(~n <= 0); 184238#L26 call #t~ret0 := fact(~n - 1);< 184247#factENTRY ~n := #in~n; 184250#L25 assume ~n <= 0;#res := 1; 184248#factFINAL assume true; 184246#factEXIT >#66#return; 184244#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184237#factFINAL assume true; 184240#factEXIT >#66#return; 184331#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184434#factFINAL assume true; 184432#factEXIT >#66#return; 184433#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 182018#factFINAL assume true; 182023#factEXIT >#68#return; 182029#L30-1 [2022-07-13 03:11:48,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:48,986 INFO L85 PathProgramCache]: Analyzing trace with hash -1282942552, now seen corresponding path program 18 times [2022-07-13 03:11:48,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:48,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1403096492] [2022-07-13 03:11:48,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:48,987 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:48,994 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:48,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2031778643] [2022-07-13 03:11:48,994 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:11:48,995 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:48,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:48,996 INFO L229 MonitoredProcess]: Starting monitored process 129 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:11:48,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (129)] Waiting until timeout for monitored process [2022-07-13 03:11:49,142 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 13 check-sat command(s) [2022-07-13 03:11:49,142 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:49,144 INFO L263 TraceCheckSpWp]: Trace formula consists of 357 conjuncts, 17 conjunts are in the unsatisfiable core [2022-07-13 03:11:49,147 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:49,310 INFO L134 CoverageAnalysis]: Checked inductivity of 2563 backedges. 550 proven. 52 refuted. 0 times theorem prover too weak. 1961 trivial. 0 not checked. [2022-07-13 03:11:49,311 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:49,855 INFO L134 CoverageAnalysis]: Checked inductivity of 2563 backedges. 550 proven. 57 refuted. 0 times theorem prover too weak. 1956 trivial. 0 not checked. [2022-07-13 03:11:49,855 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:49,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1403096492] [2022-07-13 03:11:49,856 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:49,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2031778643] [2022-07-13 03:11:49,856 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2031778643] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:49,856 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:49,856 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 15] total 18 [2022-07-13 03:11:49,856 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2090301269] [2022-07-13 03:11:49,856 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:49,857 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:49,857 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:49,857 INFO L85 PathProgramCache]: Analyzing trace with hash -876828532, now seen corresponding path program 17 times [2022-07-13 03:11:49,857 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:49,857 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [243477272] [2022-07-13 03:11:49,857 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:49,858 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:49,864 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:49,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1408397774] [2022-07-13 03:11:49,864 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:11:49,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:49,865 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:49,868 INFO L229 MonitoredProcess]: Starting monitored process 130 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:11:49,893 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (130)] Waiting until timeout for monitored process [2022-07-13 03:11:49,998 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2022-07-13 03:11:49,999 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:11:50,000 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:11:50,003 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:50,190 INFO L134 CoverageAnalysis]: Checked inductivity of 2401 backedges. 1327 proven. 210 refuted. 0 times theorem prover too weak. 864 trivial. 0 not checked. [2022-07-13 03:11:50,190 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:51,145 INFO L134 CoverageAnalysis]: Checked inductivity of 2401 backedges. 332 proven. 483 refuted. 0 times theorem prover too weak. 1586 trivial. 0 not checked. [2022-07-13 03:11:51,145 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:51,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [243477272] [2022-07-13 03:11:51,146 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:51,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1408397774] [2022-07-13 03:11:51,146 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1408397774] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:51,146 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:51,146 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 19] total 22 [2022-07-13 03:11:51,146 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1910547741] [2022-07-13 03:11:51,146 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:51,147 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:11:51,147 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:11:51,147 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-07-13 03:11:51,147 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=387, Unknown=0, NotChecked=0, Total=462 [2022-07-13 03:11:51,148 INFO L87 Difference]: Start difference. First operand 2464 states and 3699 transitions. cyclomatic complexity: 1266 Second operand has 22 states, 19 states have (on average 3.3157894736842106) internal successors, (63), 22 states have internal predecessors, (63), 14 states have call successors, (24), 2 states have call predecessors, (24), 9 states have return successors, (27), 9 states have call predecessors, (27), 14 states have call successors, (27) [2022-07-13 03:11:52,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:11:52,068 INFO L93 Difference]: Finished difference Result 2571 states and 3843 transitions. [2022-07-13 03:11:52,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-07-13 03:11:52,069 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2571 states and 3843 transitions. [2022-07-13 03:11:52,081 INFO L131 ngComponentsAnalysis]: Automaton has 13 accepting balls. 533 [2022-07-13 03:11:52,095 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2571 states to 2569 states and 3834 transitions. [2022-07-13 03:11:52,095 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1016 [2022-07-13 03:11:52,096 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1016 [2022-07-13 03:11:52,096 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2569 states and 3834 transitions. [2022-07-13 03:11:52,098 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:11:52,098 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2569 states and 3834 transitions. [2022-07-13 03:11:52,099 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2569 states and 3834 transitions. [2022-07-13 03:11:52,135 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2569 to 2404. [2022-07-13 03:11:52,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2404 states, 1522 states have (on average 1.0749014454664914) internal successors, (1636), 1511 states have internal predecessors, (1636), 586 states have call successors, (616), 274 states have call predecessors, (616), 296 states have return successors, (1322), 618 states have call predecessors, (1322), 586 states have call successors, (1322) [2022-07-13 03:11:52,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2404 states to 2404 states and 3574 transitions. [2022-07-13 03:11:52,147 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2404 states and 3574 transitions. [2022-07-13 03:11:52,147 INFO L374 stractBuchiCegarLoop]: Abstraction has 2404 states and 3574 transitions. [2022-07-13 03:11:52,147 INFO L287 stractBuchiCegarLoop]: ======== Iteration 33 ============ [2022-07-13 03:11:52,147 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2404 states and 3574 transitions. [2022-07-13 03:11:52,155 INFO L131 ngComponentsAnalysis]: Automaton has 13 accepting balls. 527 [2022-07-13 03:11:52,155 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:11:52,155 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:11:52,157 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [35, 35, 19, 16, 16, 16, 16, 7, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:52,157 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 7, 7, 7, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:11:52,157 INFO L752 eck$LassoCheckResult]: Stem: 189723#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 189695#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 189696#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 189722#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 189747#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 190363#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 190361#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 190357#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 190358#factENTRY ~n := #in~n; 190362#L25 assume ~n <= 0;#res := 1; 190360#factFINAL assume true; 190356#factEXIT >#68#return; 190352#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 190353#factENTRY ~n := #in~n; 190359#L25 assume ~n <= 0;#res := 1; 190355#factFINAL assume true; 190351#factEXIT >#70#return; 190348#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 190349#factENTRY ~n := #in~n; 190354#L25 assume ~n <= 0;#res := 1; 190350#factFINAL assume true; 190347#factEXIT >#72#return; 190346#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 190344#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 190341#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 190336#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 190330#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 190325#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 190326#factENTRY ~n := #in~n; 190343#L25 assume !(~n <= 0); 190339#L26 call #t~ret0 := fact(~n - 1);< 190340#factENTRY ~n := #in~n; 190345#L25 assume ~n <= 0;#res := 1; 190342#factFINAL assume true; 190338#factEXIT >#66#return; 190335#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190332#factFINAL assume true; 190324#factEXIT >#74#return; 190301#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 190305#factENTRY ~n := #in~n; 190331#L25 assume ~n <= 0;#res := 1; 190321#factFINAL assume true; 190299#factEXIT >#76#return; 190294#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 190297#factENTRY ~n := #in~n; 190419#L25 assume !(~n <= 0); 190310#L26 call #t~ret0 := fact(~n - 1);< 190320#factENTRY ~n := #in~n; 190333#L25 assume ~n <= 0;#res := 1; 190327#factFINAL assume true; 190307#factEXIT >#66#return; 190306#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190298#factFINAL assume true; 190291#factEXIT >#78#return; 190289#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 190288#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 190287#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 190286#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 190226#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 190209#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 190211#factENTRY ~n := #in~n; 190219#L25 assume !(~n <= 0); 190216#L26 call #t~ret0 := fact(~n - 1);< 190217#factENTRY ~n := #in~n; 190220#L25 assume ~n <= 0;#res := 1; 190218#factFINAL assume true; 190215#factEXIT >#66#return; 190214#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190213#factFINAL assume true; 190208#factEXIT >#74#return; 190204#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 190206#factENTRY ~n := #in~n; 190212#L25 assume ~n <= 0;#res := 1; 190207#factFINAL assume true; 190203#factEXIT >#76#return; 190143#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 190186#factENTRY ~n := #in~n; 190187#L25 assume !(~n <= 0); 190146#L26 call #t~ret0 := fact(~n - 1);< 190175#factENTRY ~n := #in~n; 190166#L25 assume ~n <= 0;#res := 1; 190171#factFINAL assume true; 190242#factEXIT >#66#return; 190263#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190283#factFINAL assume true; 190280#factEXIT >#78#return; 190057#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 190056#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 190054#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 190052#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 190050#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 190048#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 190049#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 190758#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 190747#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 190748#factENTRY ~n := #in~n; 190770#L25 assume !(~n <= 0); 190762#L26 call #t~ret0 := fact(~n - 1);< 190763#factENTRY ~n := #in~n; 190777#L25 assume ~n <= 0;#res := 1; 190769#factFINAL assume true; 190761#factEXIT >#66#return; 190757#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190755#factFINAL assume true; 190751#factEXIT >#68#return; 190737#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 190742#factENTRY ~n := #in~n; 190749#L25 assume ~n <= 0;#res := 1; 190743#factFINAL assume true; 190734#factEXIT >#70#return; 190673#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 190679#factENTRY ~n := #in~n; 190676#L25 assume !(~n <= 0); 190590#L26 call #t~ret0 := fact(~n - 1);< 190667#factENTRY ~n := #in~n; 190589#L25 assume ~n <= 0;#res := 1; 190596#factFINAL assume true; 190844#factEXIT >#66#return; 190828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190826#factFINAL assume true; 190819#factEXIT >#72#return; 190820#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 190883#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 190879#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 190859#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 190860#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 190801#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 190824#factENTRY ~n := #in~n; 190822#L25 assume !(~n <= 0); 190593#L26 call #t~ret0 := fact(~n - 1);< 190598#factENTRY ~n := #in~n; 190589#L25 assume ~n <= 0;#res := 1; 190596#factFINAL assume true; 190844#factEXIT >#66#return; 190845#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 190846#factFINAL assume true; 190842#factEXIT >#68#return; 190735#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 191104#factENTRY ~n := #in~n; 191135#L25 assume !(~n <= 0); 191110#L26 call #t~ret0 := fact(~n - 1);< 191115#factENTRY ~n := #in~n; 191062#L25 assume ~n <= 0;#res := 1; 191126#factFINAL assume true; 191107#factEXIT >#66#return; 191106#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191105#factFINAL assume true; 191103#factEXIT >#70#return; 191096#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 191100#factENTRY ~n := #in~n; 191125#L25 assume ~n <= 0;#res := 1; 191122#factFINAL assume true; 191093#factEXIT >#72#return; 191086#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 191087#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 191081#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 191082#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 191065#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 191019#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 191036#factENTRY ~n := #in~n; 191026#L25 assume !(~n <= 0); 190982#L26 call #t~ret0 := fact(~n - 1);< 191021#factENTRY ~n := #in~n; 191063#L25 assume !(~n <= 0); 190989#L26 call #t~ret0 := fact(~n - 1);< 191057#factENTRY ~n := #in~n; 191061#L25 assume ~n <= 0;#res := 1; 191059#factFINAL assume true; 191055#factEXIT >#66#return; 191054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191037#factFINAL assume true; 191027#factEXIT >#66#return; 191031#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191657#factFINAL assume true; 191654#factEXIT >#74#return; 191469#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 191649#factENTRY ~n := #in~n; 192046#L25 assume !(~n <= 0); 191753#L26 call #t~ret0 := fact(~n - 1);< 191774#factENTRY ~n := #in~n; 191901#L25 assume ~n <= 0;#res := 1; 191900#factFINAL assume true; 191888#factEXIT >#66#return; 191893#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192052#factFINAL assume true; 192047#factEXIT >#76#return; 189703#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 191982#factENTRY ~n := #in~n; 191983#L25 assume !(~n <= 0); 189701#L26 call #t~ret0 := fact(~n - 1);< 189704#factENTRY ~n := #in~n; 191901#L25 assume ~n <= 0;#res := 1; 191900#factFINAL assume true; 191888#factEXIT >#66#return; 191892#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192056#factFINAL assume true; 192055#factEXIT >#78#return; 192054#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 192053#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 192051#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 192050#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 192049#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 191789#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 191883#factENTRY ~n := #in~n; 191882#L25 assume !(~n <= 0); 191715#L26 call #t~ret0 := fact(~n - 1);< 191773#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 191781#L25 assume ~n <= 0;#res := 1; 191780#factFINAL assume true; 191776#factEXIT >#66#return; 191775#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191772#factFINAL assume true; 191752#factEXIT >#66#return; 191751#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191741#factFINAL assume true; 191735#factEXIT >#66#return; 191736#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191852#factFINAL assume true; 191696#factEXIT >#66#return; 191725#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192045#factFINAL assume true; 191976#factEXIT >#74#return; 189670#L30-6 [2022-07-13 03:11:52,157 INFO L754 eck$LassoCheckResult]: Loop: 189670#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 189743#factENTRY ~n := #in~n; 192043#L25 assume !(~n <= 0); 191754#L26 call #t~ret0 := fact(~n - 1);< 191774#factENTRY ~n := #in~n; 191901#L25 assume ~n <= 0;#res := 1; 191900#factFINAL assume true; 191888#factEXIT >#66#return; 191894#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192040#factFINAL assume true; 192034#factEXIT >#76#return; 189685#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 192033#factENTRY ~n := #in~n; 192028#L25 assume !(~n <= 0); 191711#L26 call #t~ret0 := fact(~n - 1);< 191773#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 191781#L25 assume ~n <= 0;#res := 1; 191780#factFINAL assume true; 191776#factEXIT >#66#return; 191775#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191772#factFINAL assume true; 191752#factEXIT >#66#return; 191766#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192065#factFINAL assume true; 192064#factEXIT >#78#return; 189697#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 189698#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 189706#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 189746#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 189724#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 189725#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 191883#factENTRY ~n := #in~n; 191882#L25 assume !(~n <= 0); 191715#L26 call #t~ret0 := fact(~n - 1);< 191773#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 189693#L25 assume !(~n <= 0); 191699#L26 call #t~ret0 := fact(~n - 1);< 191779#factENTRY ~n := #in~n; 191781#L25 assume ~n <= 0;#res := 1; 191780#factFINAL assume true; 191776#factEXIT >#66#return; 191775#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191772#factFINAL assume true; 191752#factEXIT >#66#return; 191751#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191741#factFINAL assume true; 191735#factEXIT >#66#return; 191736#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 191852#factFINAL assume true; 191696#factEXIT >#66#return; 191725#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 192045#factFINAL assume true; 191976#factEXIT >#74#return; 189670#L30-6 [2022-07-13 03:11:52,158 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:52,158 INFO L85 PathProgramCache]: Analyzing trace with hash -610219519, now seen corresponding path program 19 times [2022-07-13 03:11:52,158 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:52,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2009069058] [2022-07-13 03:11:52,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:52,158 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:52,166 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:52,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2044965021] [2022-07-13 03:11:52,166 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:11:52,166 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:52,167 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:52,169 INFO L229 MonitoredProcess]: Starting monitored process 131 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:11:52,170 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (131)] Waiting until timeout for monitored process [2022-07-13 03:11:52,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:52,331 INFO L263 TraceCheckSpWp]: Trace formula consists of 541 conjuncts, 10 conjunts are in the unsatisfiable core [2022-07-13 03:11:52,334 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:52,409 INFO L134 CoverageAnalysis]: Checked inductivity of 2718 backedges. 1195 proven. 3 refuted. 0 times theorem prover too weak. 1520 trivial. 0 not checked. [2022-07-13 03:11:52,409 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:11:52,747 INFO L134 CoverageAnalysis]: Checked inductivity of 2718 backedges. 117 proven. 180 refuted. 0 times theorem prover too weak. 2421 trivial. 0 not checked. [2022-07-13 03:11:52,747 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:11:52,747 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2009069058] [2022-07-13 03:11:52,748 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:11:52,748 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2044965021] [2022-07-13 03:11:52,748 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2044965021] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:11:52,748 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:11:52,748 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 11 [2022-07-13 03:11:52,748 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1955769122] [2022-07-13 03:11:52,748 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:11:52,749 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:11:52,749 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:52,749 INFO L85 PathProgramCache]: Analyzing trace with hash -831619668, now seen corresponding path program 3 times [2022-07-13 03:11:52,749 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:11:52,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [871625241] [2022-07-13 03:11:52,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:11:52,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:11:52,753 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:11:52,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2032995263] [2022-07-13 03:11:52,754 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:11:52,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:11:52,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:52,761 INFO L229 MonitoredProcess]: Starting monitored process 132 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:11:52,762 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (132)] Waiting until timeout for monitored process [2022-07-13 03:11:52,869 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 12 check-sat command(s) [2022-07-13 03:11:52,869 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:11:52,870 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:11:52,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:11:52,892 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:11:53,658 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:53,659 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:53,659 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:53,659 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:53,659 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:11:53,659 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:53,659 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:53,659 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:53,659 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration33_Loop [2022-07-13 03:11:53,659 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:53,659 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:53,660 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:11:53,661 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:11:53,690 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:11:53,692 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:11:53,693 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:11:53,695 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:11:53,794 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:53,795 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:11:53,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:53,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:53,801 INFO L229 MonitoredProcess]: Starting monitored process 133 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:11:53,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (133)] Waiting until timeout for monitored process [2022-07-13 03:11:53,802 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:53,802 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:53,808 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:11:53,809 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:11:53,823 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (133)] Ended with exit code 0 [2022-07-13 03:11:53,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:53,824 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:53,825 INFO L229 MonitoredProcess]: Starting monitored process 134 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:11:53,826 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (134)] Waiting until timeout for monitored process [2022-07-13 03:11:53,827 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:11:53,827 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:53,851 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (134)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:53,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:53,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:53,853 INFO L229 MonitoredProcess]: Starting monitored process 135 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:11:53,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (135)] Waiting until timeout for monitored process [2022-07-13 03:11:53,855 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:11:53,855 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:11:53,867 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:11:53,884 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (135)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:53,884 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:11:53,884 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:11:53,884 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:11:53,884 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:11:53,884 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:11:53,884 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:53,885 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:11:53,885 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:11:53,885 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration33_Loop [2022-07-13 03:11:53,885 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:11:53,885 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:11:53,885 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:11:53,887 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:11:53,917 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:11:53,919 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:11:53,920 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:11:53,922 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:11:54,027 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:11:54,027 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:11:54,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:54,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:54,029 INFO L229 MonitoredProcess]: Starting monitored process 136 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:11:54,030 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (136)] Waiting until timeout for monitored process [2022-07-13 03:11:54,032 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:11:54,037 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:54,037 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:54,037 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:54,037 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:54,037 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:54,039 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:54,039 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:54,040 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:11:54,055 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (136)] Ended with exit code 0 [2022-07-13 03:11:54,055 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:54,056 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:54,057 INFO L229 MonitoredProcess]: Starting monitored process 137 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:11:54,058 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (137)] Waiting until timeout for monitored process [2022-07-13 03:11:54,059 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:11:54,064 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:11:54,064 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:11:54,064 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:11:54,064 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:11:54,064 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:11:54,066 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:11:54,066 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:11:54,069 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:11:54,072 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:11:54,072 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-13 03:11:54,072 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:11:54,072 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:11:54,074 INFO L229 MonitoredProcess]: Starting monitored process 138 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:11:54,075 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (138)] Waiting until timeout for monitored process [2022-07-13 03:11:54,075 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:11:54,075 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:11:54,075 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:11:54,076 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 7 Supporting invariants [] [2022-07-13 03:11:54,091 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (137)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:54,091 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:11:54,100 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:54,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:54,285 INFO L263 TraceCheckSpWp]: Trace formula consists of 1521 conjuncts, 72 conjunts are in the unsatisfiable core [2022-07-13 03:11:54,289 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:55,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:55,258 INFO L263 TraceCheckSpWp]: Trace formula consists of 417 conjuncts, 36 conjunts are in the unsatisfiable core [2022-07-13 03:11:55,260 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:55,646 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 99 proven. 26 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:55,646 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 10 loop predicates [2022-07-13 03:11:55,647 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204 Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:11:56,085 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204. Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) Result 3105 states and 4580 transitions. Complement of second has 61 states. [2022-07-13 03:11:56,086 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 13 states 2 stem states 10 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:56,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:11:56,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-07-13 03:11:56,087 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 83 transitions. Stem has 231 letters. Loop has 62 letters. [2022-07-13 03:11:56,087 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:56,087 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:56,095 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:56,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:56,266 INFO L263 TraceCheckSpWp]: Trace formula consists of 1521 conjuncts, 72 conjunts are in the unsatisfiable core [2022-07-13 03:11:56,270 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:57,127 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (138)] Forceful destruction successful, exit code 0 [2022-07-13 03:11:57,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:57,428 INFO L263 TraceCheckSpWp]: Trace formula consists of 417 conjuncts, 36 conjunts are in the unsatisfiable core [2022-07-13 03:11:57,430 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:57,800 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 99 proven. 26 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:57,800 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 10 loop predicates [2022-07-13 03:11:57,802 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204 Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:11:58,174 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204. Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) Result 3105 states and 4580 transitions. Complement of second has 61 states. [2022-07-13 03:11:58,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 13 states 2 stem states 10 non-accepting loop states 1 accepting loop states [2022-07-13 03:11:58,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:11:58,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-07-13 03:11:58,175 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 83 transitions. Stem has 231 letters. Loop has 62 letters. [2022-07-13 03:11:58,175 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:11:58,176 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:11:58,184 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:11:58,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:58,351 INFO L263 TraceCheckSpWp]: Trace formula consists of 1521 conjuncts, 72 conjunts are in the unsatisfiable core [2022-07-13 03:11:58,355 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:59,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:11:59,332 INFO L263 TraceCheckSpWp]: Trace formula consists of 417 conjuncts, 36 conjunts are in the unsatisfiable core [2022-07-13 03:11:59,333 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:11:59,681 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 99 proven. 26 refuted. 0 times theorem prover too weak. 97 trivial. 0 not checked. [2022-07-13 03:11:59,682 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 10 loop predicates [2022-07-13 03:11:59,682 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204 Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:12:00,198 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2404 states and 3574 transitions. cyclomatic complexity: 1204. Second operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) Result 5196 states and 7668 transitions. Complement of second has 106 states. [2022-07-13 03:12:00,200 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 13 states 2 stem states 10 non-accepting loop states 1 accepting loop states [2022-07-13 03:12:00,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 12 states have internal predecessors, (42), 7 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (16), 9 states have call predecessors, (16), 7 states have call successors, (16) [2022-07-13 03:12:00,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 124 transitions. [2022-07-13 03:12:00,201 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 124 transitions. Stem has 231 letters. Loop has 62 letters. [2022-07-13 03:12:00,202 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:12:00,202 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 124 transitions. Stem has 293 letters. Loop has 62 letters. [2022-07-13 03:12:00,203 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:12:00,203 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 124 transitions. Stem has 231 letters. Loop has 124 letters. [2022-07-13 03:12:00,204 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:12:00,204 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5196 states and 7668 transitions. [2022-07-13 03:12:00,225 INFO L131 ngComponentsAnalysis]: Automaton has 14 accepting balls. 739 [2022-07-13 03:12:00,241 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5196 states to 3927 states and 5869 transitions. [2022-07-13 03:12:00,241 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1120 [2022-07-13 03:12:00,243 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1138 [2022-07-13 03:12:00,243 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3927 states and 5869 transitions. [2022-07-13 03:12:00,244 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:00,244 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3927 states and 5869 transitions. [2022-07-13 03:12:00,245 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3927 states and 5869 transitions. [2022-07-13 03:12:00,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3927 to 3410. [2022-07-13 03:12:00,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3410 states, 2149 states have (on average 1.0711959050721265) internal successors, (2302), 2145 states have internal predecessors, (2302), 820 states have call successors, (889), 405 states have call predecessors, (889), 441 states have return successors, (1878), 859 states have call predecessors, (1878), 820 states have call successors, (1878) [2022-07-13 03:12:00,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3410 states to 3410 states and 5069 transitions. [2022-07-13 03:12:00,313 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3410 states and 5069 transitions. [2022-07-13 03:12:00,313 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:00,313 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-07-13 03:12:00,313 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=82, Unknown=0, NotChecked=0, Total=110 [2022-07-13 03:12:00,313 INFO L87 Difference]: Start difference. First operand 3410 states and 5069 transitions. Second operand has 11 states, 10 states have (on average 4.8) internal successors, (48), 11 states have internal predecessors, (48), 7 states have call successors, (23), 2 states have call predecessors, (23), 4 states have return successors, (23), 5 states have call predecessors, (23), 7 states have call successors, (23) [2022-07-13 03:12:00,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:00,640 INFO L93 Difference]: Finished difference Result 3668 states and 5370 transitions. [2022-07-13 03:12:00,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-07-13 03:12:00,641 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3668 states and 5370 transitions. [2022-07-13 03:12:00,659 INFO L131 ngComponentsAnalysis]: Automaton has 14 accepting balls. 773 [2022-07-13 03:12:00,742 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3668 states to 3556 states and 5228 transitions. [2022-07-13 03:12:00,743 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1208 [2022-07-13 03:12:00,744 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1212 [2022-07-13 03:12:00,744 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3556 states and 5228 transitions. [2022-07-13 03:12:00,744 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:00,744 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3556 states and 5228 transitions. [2022-07-13 03:12:00,745 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3556 states and 5228 transitions. [2022-07-13 03:12:00,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3556 to 3269. [2022-07-13 03:12:00,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3269 states, 2060 states have (on average 1.0728155339805825) internal successors, (2210), 2065 states have internal predecessors, (2210), 780 states have call successors, (838), 382 states have call predecessors, (838), 429 states have return successors, (1736), 821 states have call predecessors, (1736), 780 states have call successors, (1736) [2022-07-13 03:12:00,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3269 states to 3269 states and 4784 transitions. [2022-07-13 03:12:00,809 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3269 states and 4784 transitions. [2022-07-13 03:12:00,809 INFO L374 stractBuchiCegarLoop]: Abstraction has 3269 states and 4784 transitions. [2022-07-13 03:12:00,809 INFO L287 stractBuchiCegarLoop]: ======== Iteration 34 ============ [2022-07-13 03:12:00,809 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3269 states and 4784 transitions. [2022-07-13 03:12:00,817 INFO L131 ngComponentsAnalysis]: Automaton has 14 accepting balls. 655 [2022-07-13 03:12:00,817 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:00,817 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:00,819 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [35, 35, 19, 16, 16, 16, 16, 7, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2022-07-13 03:12:00,819 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [29, 29, 17, 17, 17, 17, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:00,819 INFO L752 eck$LassoCheckResult]: Stem: 214968#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 214939#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 214940#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 214967#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 214997#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 215834#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215832#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215828#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215829#factENTRY ~n := #in~n; 215833#L25 assume ~n <= 0;#res := 1; 215831#factFINAL assume true; 215827#factEXIT >#68#return; 215823#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215824#factENTRY ~n := #in~n; 215830#L25 assume ~n <= 0;#res := 1; 215826#factFINAL assume true; 215822#factEXIT >#70#return; 215819#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215820#factENTRY ~n := #in~n; 215825#L25 assume ~n <= 0;#res := 1; 215821#factFINAL assume true; 215818#factEXIT >#72#return; 215816#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215815#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 215811#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215810#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215808#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215729#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215730#factENTRY ~n := #in~n; 215792#L25 assume !(~n <= 0); 215790#L26 call #t~ret0 := fact(~n - 1);< 215791#factENTRY ~n := #in~n; 215794#L25 assume ~n <= 0;#res := 1; 215793#factFINAL assume true; 215789#factEXIT >#66#return; 215788#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215787#factFINAL assume true; 215728#factEXIT >#74#return; 215692#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215727#factENTRY ~n := #in~n; 215731#L25 assume ~n <= 0;#res := 1; 215726#factFINAL assume true; 215690#factEXIT >#76#return; 215642#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215643#factENTRY ~n := #in~n; 215802#L25 assume !(~n <= 0); 215709#L26 call #t~ret0 := fact(~n - 1);< 215722#factENTRY ~n := #in~n; 215781#L25 assume ~n <= 0;#res := 1; 215804#factFINAL assume true; 215707#factEXIT >#66#return; 215704#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215685#factFINAL assume true; 215681#factEXIT >#78#return; 215678#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215546#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 215547#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215528#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215529#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215517#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215538#factENTRY ~n := #in~n; 215536#L25 assume !(~n <= 0); 215537#L26 call #t~ret0 := fact(~n - 1);< 215594#factENTRY ~n := #in~n; 215600#L25 assume !(~n <= 0); 215542#L26 call #t~ret0 := fact(~n - 1);< 215597#factENTRY ~n := #in~n; 215608#L25 assume ~n <= 0;#res := 1; 215605#factFINAL assume true; 215559#factEXIT >#66#return; 215560#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215592#factFINAL assume true; 215593#factEXIT >#66#return; 215526#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215527#factFINAL assume true; 215516#factEXIT >#74#return; 215519#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215671#factENTRY ~n := #in~n; 215675#L25 assume ~n <= 0;#res := 1; 215674#factFINAL assume true; 215672#factEXIT >#76#return; 215660#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215661#factENTRY ~n := #in~n; 215742#L25 assume !(~n <= 0); 215553#L26 call #t~ret0 := fact(~n - 1);< 215545#factENTRY ~n := #in~n; 215598#L25 assume !(~n <= 0); 215550#L26 call #t~ret0 := fact(~n - 1);< 215567#factENTRY ~n := #in~n; 215638#L25 assume ~n <= 0;#res := 1; 215636#factFINAL assume true; 215633#factEXIT >#66#return; 215632#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215630#factFINAL assume true; 215619#factEXIT >#66#return; 215628#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215698#factFINAL assume true; 215665#factEXIT >#78#return; 215310#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215309#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 215308#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215307#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 215305#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 215301#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 215297#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215295#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215292#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215293#factENTRY ~n := #in~n; 215304#L25 assume !(~n <= 0); 215299#L26 call #t~ret0 := fact(~n - 1);< 215300#factENTRY ~n := #in~n; 215306#L25 assume ~n <= 0;#res := 1; 215303#factFINAL assume true; 215298#factEXIT >#66#return; 215296#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215294#factFINAL assume true; 215291#factEXIT >#68#return; 215288#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215289#factENTRY ~n := #in~n; 215330#L25 assume ~n <= 0;#res := 1; 215329#factFINAL assume true; 215287#factEXIT >#70#return; 215281#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215285#factENTRY ~n := #in~n; 215283#L25 assume !(~n <= 0); 215276#L26 call #t~ret0 := fact(~n - 1);< 215278#factENTRY ~n := #in~n; 215328#L25 assume ~n <= 0;#res := 1; 215280#factFINAL assume true; 215274#factEXIT >#66#return; 215277#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215290#factFINAL assume true; 215286#factEXIT >#72#return; 215284#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215282#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 215279#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215273#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215271#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215261#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215262#factENTRY ~n := #in~n; 215311#L25 assume !(~n <= 0); 215275#L26 call #t~ret0 := fact(~n - 1);< 215278#factENTRY ~n := #in~n; 215328#L25 assume ~n <= 0;#res := 1; 215280#factFINAL assume true; 215274#factEXIT >#66#return; 215272#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215269#factFINAL assume true; 215260#factEXIT >#68#return; 215229#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215230#factENTRY ~n := #in~n; 215254#L25 assume !(~n <= 0); 215248#L26 call #t~ret0 := fact(~n - 1);< 215249#factENTRY ~n := #in~n; 215252#L25 assume ~n <= 0;#res := 1; 215253#factFINAL assume true; 215247#factEXIT >#66#return; 215243#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215240#factFINAL assume true; 215228#factEXIT >#70#return; 215226#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215227#factENTRY ~n := #in~n; 215237#L25 assume ~n <= 0;#res := 1; 215233#factFINAL assume true; 215225#factEXIT >#72#return; 215223#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215218#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 215216#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215214#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 215213#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 215211#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 215212#factENTRY ~n := #in~n; 215224#L25 assume !(~n <= 0); 215220#L26 call #t~ret0 := fact(~n - 1);< 215222#factENTRY ~n := #in~n; 215246#L25 assume !(~n <= 0); 215221#L26 call #t~ret0 := fact(~n - 1);< 215242#factENTRY ~n := #in~n; 215251#L25 assume ~n <= 0;#res := 1; 215245#factFINAL assume true; 215241#factEXIT >#66#return; 215239#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215236#factFINAL assume true; 215219#factEXIT >#66#return; 215217#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215215#factFINAL assume true; 215210#factEXIT >#74#return; 215083#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 215086#factENTRY ~n := #in~n; 215209#L25 assume !(~n <= 0); 215028#L26 call #t~ret0 := fact(~n - 1);< 215058#factENTRY ~n := #in~n; 215044#L25 assume ~n <= 0;#res := 1; 215045#factFINAL assume true; 215020#factEXIT >#66#return; 215035#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215207#factFINAL assume true; 215080#factEXIT >#76#return; 215066#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 215072#factENTRY ~n := #in~n; 215069#L25 assume !(~n <= 0); 215027#L26 call #t~ret0 := fact(~n - 1);< 215047#factENTRY ~n := #in~n; 215044#L25 assume ~n <= 0;#res := 1; 215045#factFINAL assume true; 215020#factEXIT >#66#return; 215034#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 215076#factFINAL assume true; 215074#factEXIT >#78#return; 215073#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 215005#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 215006#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 215002#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 214966#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 214955#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 214957#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 216785#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 216715#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 216717#factENTRY ~n := #in~n; 216774#L25 assume !(~n <= 0); 216729#L26 call #t~ret0 := fact(~n - 1);< 216730#factENTRY ~n := #in~n; 216754#L25 assume !(~n <= 0); 216739#L26 call #t~ret0 := fact(~n - 1);< 216752#factENTRY ~n := #in~n; 216767#L25 assume ~n <= 0;#res := 1; 216766#factFINAL assume true; 216751#factEXIT >#66#return; 216749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216741#factFINAL assume true; 216737#factEXIT >#66#return; 216734#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216733#factFINAL assume true; 216731#factEXIT >#68#return; 216705#L30-1 [2022-07-13 03:12:00,820 INFO L754 eck$LassoCheckResult]: Loop: 216705#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 216707#factENTRY ~n := #in~n; 216725#L25 assume ~n <= 0;#res := 1; 216711#factFINAL assume true; 216704#factEXIT >#70#return; 214977#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 216645#factENTRY ~n := #in~n; 216644#L25 assume !(~n <= 0); 214916#L26 call #t~ret0 := fact(~n - 1);< 216602#factENTRY ~n := #in~n; 216680#L25 assume !(~n <= 0); 214918#L26 call #t~ret0 := fact(~n - 1);< 216609#factENTRY ~n := #in~n; 216614#L25 assume ~n <= 0;#res := 1; 216613#factFINAL assume true; 216606#factEXIT >#66#return; 216604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216601#factFINAL assume true; 216573#factEXIT >#66#return; 216575#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 217702#factFINAL assume true; 217701#factEXIT >#72#return; 217700#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 217698#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 217696#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 217456#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 216864#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 216487#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 216489#factENTRY ~n := #in~n; 216616#L25 assume !(~n <= 0); 214915#L26 call #t~ret0 := fact(~n - 1);< 216578#factENTRY ~n := #in~n; 216680#L25 assume !(~n <= 0); 214918#L26 call #t~ret0 := fact(~n - 1);< 216609#factENTRY ~n := #in~n; 216614#L25 assume ~n <= 0;#res := 1; 216613#factFINAL assume true; 216606#factEXIT >#66#return; 216604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216601#factFINAL assume true; 216573#factEXIT >#66#return; 216571#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216565#factFINAL assume true; 216484#factEXIT >#68#return; 216452#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 216483#factENTRY ~n := #in~n; 216724#L25 assume !(~n <= 0); 216574#L26 call #t~ret0 := fact(~n - 1);< 216611#factENTRY ~n := #in~n; 216612#L25 assume ~n <= 0;#res := 1; 216732#factFINAL assume true; 216718#factEXIT >#66#return; 216721#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 217084#factFINAL assume true; 217083#factEXIT >#70#return; 216695#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 216702#factENTRY ~n := #in~n; 216735#L25 assume ~n <= 0;#res := 1; 216736#factFINAL assume true; 216759#factEXIT >#72#return; 216697#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 216959#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 216956#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 216924#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 216580#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 216486#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 216489#factENTRY ~n := #in~n; 216616#L25 assume !(~n <= 0); 214915#L26 call #t~ret0 := fact(~n - 1);< 216578#factENTRY ~n := #in~n; 216680#L25 assume !(~n <= 0); 214918#L26 call #t~ret0 := fact(~n - 1);< 216609#factENTRY ~n := #in~n; 216614#L25 assume ~n <= 0;#res := 1; 216613#factFINAL assume true; 216606#factEXIT >#66#return; 216604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216601#factFINAL assume true; 216573#factEXIT >#66#return; 216571#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216565#factFINAL assume true; 216484#factEXIT >#68#return; 216453#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 216455#factENTRY ~n := #in~n; 216617#L25 assume !(~n <= 0); 216472#L26 call #t~ret0 := fact(~n - 1);< 216555#factENTRY ~n := #in~n; 216679#L25 assume !(~n <= 0); 216588#L26 call #t~ret0 := fact(~n - 1);< 216590#factENTRY ~n := #in~n; 216600#L25 assume ~n <= 0;#res := 1; 216598#factFINAL assume true; 216587#factEXIT >#66#return; 216586#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216545#factFINAL assume true; 216471#factEXIT >#66#return; 216475#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216481#factFINAL assume true; 216451#factEXIT >#70#return; 216447#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 216449#factENTRY ~n := #in~n; 216544#L25 assume ~n <= 0;#res := 1; 216470#factFINAL assume true; 216444#factEXIT >#72#return; 216442#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 216441#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 216440#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 216391#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 216377#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 216332#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 216333#factENTRY ~n := #in~n; 216439#L25 assume !(~n <= 0); 216360#L26 call #t~ret0 := fact(~n - 1);< 216376#factENTRY ~n := #in~n; 216597#L25 assume !(~n <= 0); 216364#L26 call #t~ret0 := fact(~n - 1);< 216589#factENTRY ~n := #in~n; 216597#L25 assume !(~n <= 0); 216364#L26 call #t~ret0 := fact(~n - 1);< 216589#factENTRY ~n := #in~n; 216600#L25 assume ~n <= 0;#res := 1; 216598#factFINAL assume true; 216587#factEXIT >#66#return; 216586#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216545#factFINAL assume true; 216471#factEXIT >#66#return; 216438#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216379#factFINAL assume true; 216359#factEXIT >#66#return; 216358#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216356#factFINAL assume true; 216330#factEXIT >#74#return; 216323#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 216327#factENTRY ~n := #in~n; 216796#L25 assume !(~n <= 0); 216212#L26 call #t~ret0 := fact(~n - 1);< 216269#factENTRY ~n := #in~n; 216267#L25 assume !(~n <= 0); 216253#L26 call #t~ret0 := fact(~n - 1);< 216255#factENTRY ~n := #in~n; 216260#L25 assume ~n <= 0;#res := 1; 216259#factFINAL assume true; 216252#factEXIT >#66#return; 216246#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216240#factFINAL assume true; 216209#factEXIT >#66#return; 216224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216795#factFINAL assume true; 216322#factEXIT >#76#return; 216301#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 216307#factENTRY ~n := #in~n; 216357#L25 assume !(~n <= 0); 216344#L26 call #t~ret0 := fact(~n - 1);< 216355#factENTRY ~n := #in~n; 216469#L25 assume ~n <= 0;#res := 1; 216436#factFINAL assume true; 216339#factEXIT >#66#return; 216329#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216321#factFINAL assume true; 216296#factEXIT >#78#return; 216293#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 216290#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 216287#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 216283#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 216284#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 216782#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 216780#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 216778#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 216716#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 216717#factENTRY ~n := #in~n; 216774#L25 assume !(~n <= 0); 216729#L26 call #t~ret0 := fact(~n - 1);< 216730#factENTRY ~n := #in~n; 216754#L25 assume !(~n <= 0); 216739#L26 call #t~ret0 := fact(~n - 1);< 216752#factENTRY ~n := #in~n; 216767#L25 assume ~n <= 0;#res := 1; 216766#factFINAL assume true; 216751#factEXIT >#66#return; 216749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216741#factFINAL assume true; 216737#factEXIT >#66#return; 216734#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 216733#factFINAL assume true; 216731#factEXIT >#68#return; 216705#L30-1 [2022-07-13 03:12:00,821 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:00,821 INFO L85 PathProgramCache]: Analyzing trace with hash 435773136, now seen corresponding path program 20 times [2022-07-13 03:12:00,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:00,822 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2086073692] [2022-07-13 03:12:00,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:00,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:00,833 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:00,834 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [39146539] [2022-07-13 03:12:00,834 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:12:00,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:00,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:00,836 INFO L229 MonitoredProcess]: Starting monitored process 139 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:12:00,837 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (139)] Waiting until timeout for monitored process [2022-07-13 03:12:01,061 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:12:01,062 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:12:01,062 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:12:01,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:12:01,164 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:12:01,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:01,165 INFO L85 PathProgramCache]: Analyzing trace with hash 1436228884, now seen corresponding path program 18 times [2022-07-13 03:12:01,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:01,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1372180759] [2022-07-13 03:12:01,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:01,165 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:01,169 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:01,170 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [258176952] [2022-07-13 03:12:01,170 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:12:01,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:01,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:01,172 INFO L229 MonitoredProcess]: Starting monitored process 140 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:12:01,179 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (140)] Waiting until timeout for monitored process [2022-07-13 03:12:01,291 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2022-07-13 03:12:01,291 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:01,292 INFO L263 TraceCheckSpWp]: Trace formula consists of 247 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:12:01,294 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:01,522 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 502 proven. 119 refuted. 0 times theorem prover too weak. 1312 trivial. 0 not checked. [2022-07-13 03:12:01,522 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:02,242 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 506 proven. 123 refuted. 0 times theorem prover too weak. 1304 trivial. 0 not checked. [2022-07-13 03:12:02,242 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:02,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1372180759] [2022-07-13 03:12:02,242 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:02,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [258176952] [2022-07-13 03:12:02,242 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [258176952] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:02,242 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:02,242 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 19] total 24 [2022-07-13 03:12:02,242 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1391727997] [2022-07-13 03:12:02,242 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:02,243 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:12:02,243 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:02,243 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-07-13 03:12:02,243 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=516, Unknown=0, NotChecked=0, Total=600 [2022-07-13 03:12:02,243 INFO L87 Difference]: Start difference. First operand 3269 states and 4784 transitions. cyclomatic complexity: 1554 Second operand has 25 states, 21 states have (on average 2.8095238095238093) internal successors, (59), 24 states have internal predecessors, (59), 14 states have call successors, (22), 1 states have call predecessors, (22), 7 states have return successors, (24), 10 states have call predecessors, (24), 14 states have call successors, (24) [2022-07-13 03:12:03,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:03,848 INFO L93 Difference]: Finished difference Result 3841 states and 5761 transitions. [2022-07-13 03:12:03,848 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-07-13 03:12:03,848 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3841 states and 5761 transitions. [2022-07-13 03:12:03,864 INFO L131 ngComponentsAnalysis]: Automaton has 25 accepting balls. 640 [2022-07-13 03:12:03,884 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3841 states to 3831 states and 5741 transitions. [2022-07-13 03:12:03,884 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1230 [2022-07-13 03:12:03,885 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1230 [2022-07-13 03:12:03,885 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3831 states and 5741 transitions. [2022-07-13 03:12:03,885 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:03,885 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3831 states and 5741 transitions. [2022-07-13 03:12:03,886 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3831 states and 5741 transitions. [2022-07-13 03:12:03,928 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3831 to 3566. [2022-07-13 03:12:03,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3566 states, 2231 states have (on average 1.0757507844016136) internal successors, (2400), 2235 states have internal predecessors, (2400), 906 states have call successors, (977), 388 states have call predecessors, (977), 429 states have return successors, (1979), 942 states have call predecessors, (1979), 906 states have call successors, (1979) [2022-07-13 03:12:03,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3566 states to 3566 states and 5356 transitions. [2022-07-13 03:12:03,943 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3566 states and 5356 transitions. [2022-07-13 03:12:03,943 INFO L374 stractBuchiCegarLoop]: Abstraction has 3566 states and 5356 transitions. [2022-07-13 03:12:03,943 INFO L287 stractBuchiCegarLoop]: ======== Iteration 35 ============ [2022-07-13 03:12:03,943 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3566 states and 5356 transitions. [2022-07-13 03:12:03,953 INFO L131 ngComponentsAnalysis]: Automaton has 23 accepting balls. 616 [2022-07-13 03:12:03,953 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:03,953 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:03,955 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [39, 39, 21, 18, 18, 18, 18, 7, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:03,955 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 7, 7, 7, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:03,955 INFO L752 eck$LassoCheckResult]: Stem: 223264#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 223236#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 223237#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 223263#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 223291#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 223938#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 223936#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 223932#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 223933#factENTRY ~n := #in~n; 223937#L25 assume ~n <= 0;#res := 1; 223935#factFINAL assume true; 223931#factEXIT >#68#return; 223927#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 223928#factENTRY ~n := #in~n; 223934#L25 assume ~n <= 0;#res := 1; 223930#factFINAL assume true; 223926#factEXIT >#70#return; 223923#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 223924#factENTRY ~n := #in~n; 223929#L25 assume ~n <= 0;#res := 1; 223925#factFINAL assume true; 223922#factEXIT >#72#return; 223919#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 223917#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 223913#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 223908#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 223906#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 223902#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 223903#factENTRY ~n := #in~n; 223916#L25 assume !(~n <= 0); 223911#L26 call #t~ret0 := fact(~n - 1);< 223912#factENTRY ~n := #in~n; 223918#L25 assume ~n <= 0;#res := 1; 223915#factFINAL assume true; 223910#factEXIT >#66#return; 223907#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 223905#factFINAL assume true; 223901#factEXIT >#74#return; 223893#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 223895#factENTRY ~n := #in~n; 223904#L25 assume ~n <= 0;#res := 1; 223897#factFINAL assume true; 223890#factEXIT >#76#return; 223881#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 223884#factENTRY ~n := #in~n; 224026#L25 assume !(~n <= 0); 223969#L26 call #t~ret0 := fact(~n - 1);< 223979#factENTRY ~n := #in~n; 223983#L25 assume ~n <= 0;#res := 1; 223980#factFINAL assume true; 223964#factEXIT >#66#return; 223963#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 223962#factFINAL assume true; 223879#factEXIT >#78#return; 223877#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 223875#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 223874#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 223873#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 223871#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 223866#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 223868#factENTRY ~n := #in~n; 223896#L25 assume !(~n <= 0); 223887#L26 call #t~ret0 := fact(~n - 1);< 223889#factENTRY ~n := #in~n; 223951#L25 assume !(~n <= 0); 223886#L26 call #t~ret0 := fact(~n - 1);< 223950#factENTRY ~n := #in~n; 223958#L25 assume ~n <= 0;#res := 1; 223956#factFINAL assume true; 223953#factEXIT >#66#return; 223952#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 223949#factFINAL assume true; 223885#factEXIT >#66#return; 223878#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 223876#factFINAL assume true; 223869#factEXIT >#74#return; 223858#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 223859#factENTRY ~n := #in~n; 223947#L25 assume ~n <= 0;#res := 1; 223948#factFINAL assume true; 224070#factEXIT >#76#return; 224058#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 224059#factENTRY ~n := #in~n; 224110#L25 assume !(~n <= 0); 223826#L26 call #t~ret0 := fact(~n - 1);< 223824#factENTRY ~n := #in~n; 223846#L25 assume !(~n <= 0); 223828#L26 call #t~ret0 := fact(~n - 1);< 223830#factENTRY ~n := #in~n; 223850#L25 assume ~n <= 0;#res := 1; 223847#factFINAL assume true; 223839#factEXIT >#66#return; 223841#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 223946#factFINAL assume true; 223942#factEXIT >#66#return; 223943#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224108#factFINAL assume true; 224057#factEXIT >#78#return; 223699#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 223697#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 223682#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 223678#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 223673#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 223618#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 223619#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 224937#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 224927#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 224928#factENTRY ~n := #in~n; 224946#L25 assume !(~n <= 0); 224940#L26 call #t~ret0 := fact(~n - 1);< 224943#factENTRY ~n := #in~n; 224977#L25 assume ~n <= 0;#res := 1; 224976#factFINAL assume true; 224957#factEXIT >#66#return; 224954#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224950#factFINAL assume true; 224925#factEXIT >#68#return; 224847#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 224851#factENTRY ~n := #in~n; 224924#L25 assume ~n <= 0;#res := 1; 224914#factFINAL assume true; 224846#factEXIT >#70#return; 224849#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 225083#factENTRY ~n := #in~n; 225082#L25 assume !(~n <= 0); 224796#L26 call #t~ret0 := fact(~n - 1);< 224802#factENTRY ~n := #in~n; 224921#L25 assume ~n <= 0;#res := 1; 225248#factFINAL assume true; 225216#factEXIT >#66#return; 225213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225212#factFINAL assume true; 225209#factEXIT >#72#return; 225210#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 225255#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 225254#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 225253#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 225252#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 225249#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 225251#factENTRY ~n := #in~n; 225250#L25 assume !(~n <= 0); 225217#L26 call #t~ret0 := fact(~n - 1);< 225221#factENTRY ~n := #in~n; 224921#L25 assume ~n <= 0;#res := 1; 225248#factFINAL assume true; 225216#factEXIT >#66#return; 225220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225361#factFINAL assume true; 225359#factEXIT >#68#return; 225356#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 225357#factENTRY ~n := #in~n; 225397#L25 assume !(~n <= 0); 225363#L26 call #t~ret0 := fact(~n - 1);< 225368#factENTRY ~n := #in~n; 224855#L25 assume ~n <= 0;#res := 1; 225369#factFINAL assume true; 225362#factEXIT >#66#return; 225360#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225358#factFINAL assume true; 225355#factEXIT >#70#return; 224626#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 224630#factENTRY ~n := #in~n; 224654#L25 assume ~n <= 0;#res := 1; 224638#factFINAL assume true; 224625#factEXIT >#72#return; 224629#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 225354#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 225353#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 225352#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 225351#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 224611#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 224956#factENTRY ~n := #in~n; 225345#L25 assume !(~n <= 0); 224698#L26 call #t~ret0 := fact(~n - 1);< 225325#factENTRY ~n := #in~n; 224853#L25 assume !(~n <= 0); 224702#L26 call #t~ret0 := fact(~n - 1);< 224819#factENTRY ~n := #in~n; 224932#L25 assume ~n <= 0;#res := 1; 224852#factFINAL assume true; 224817#factEXIT >#66#return; 224815#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224764#factFINAL assume true; 224696#factEXIT >#66#return; 224711#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225988#factFINAL assume true; 225987#factEXIT >#74#return; 223219#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 223285#factENTRY ~n := #in~n; 226530#L25 assume !(~n <= 0); 225060#L26 call #t~ret0 := fact(~n - 1);< 225178#factENTRY ~n := #in~n; 226181#L25 assume ~n <= 0;#res := 1; 226175#factFINAL assume true; 225757#factEXIT >#66#return; 225769#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 226528#factFINAL assume true; 226525#factEXIT >#76#return; 226178#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 226501#factENTRY ~n := #in~n; 226500#L25 assume !(~n <= 0); 225760#L26 call #t~ret0 := fact(~n - 1);< 225771#factENTRY ~n := #in~n; 226181#L25 assume ~n <= 0;#res := 1; 226175#factFINAL assume true; 225757#factEXIT >#66#return; 225766#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 226553#factFINAL assume true; 226551#factEXIT >#78#return; 226550#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 226549#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 226548#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 226547#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 226546#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 225556#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 225558#factENTRY ~n := #in~n; 225566#L25 assume !(~n <= 0); 225011#L26 call #t~ret0 := fact(~n - 1);< 225565#factENTRY ~n := #in~n; 225167#L25 assume !(~n <= 0); 225016#L26 call #t~ret0 := fact(~n - 1);< 225089#factENTRY ~n := #in~n; 225137#L25 assume ~n <= 0;#res := 1; 225135#factFINAL assume true; 225086#factEXIT >#66#return; 225084#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225077#factFINAL assume true; 225050#factEXIT >#66#return; 225069#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225562#factFINAL assume true; 225555#factEXIT >#74#return; 223217#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 225540#factENTRY ~n := #in~n; 225542#L25 assume ~n <= 0;#res := 1; 225541#factFINAL assume true; 225539#factEXIT >#76#return; 225534#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 225537#factENTRY ~n := #in~n; 225533#L25 assume !(~n <= 0); 224500#L26 call #t~ret0 := fact(~n - 1);< 224558#factENTRY ~n := #in~n; 224537#L25 assume !(~n <= 0); 224488#L26 call #t~ret0 := fact(~n - 1);< 224530#factENTRY ~n := #in~n; 224539#L25 assume ~n <= 0;#res := 1; 224536#factFINAL assume true; 224527#factEXIT >#66#return; 224529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224822#factFINAL assume true; 224778#factEXIT >#66#return; 224786#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225549#factFINAL assume true; 225546#factEXIT >#78#return; 224433#L30-8 [2022-07-13 03:12:03,955 INFO L754 eck$LassoCheckResult]: Loop: 224433#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 223246#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 223247#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 225502#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 225183#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 225180#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 225181#factENTRY ~n := #in~n; 225187#L25 assume !(~n <= 0); 224458#L26 call #t~ret0 := fact(~n - 1);< 224486#factENTRY ~n := #in~n; 224537#L25 assume !(~n <= 0); 224488#L26 call #t~ret0 := fact(~n - 1);< 224530#factENTRY ~n := #in~n; 224537#L25 assume !(~n <= 0); 224488#L26 call #t~ret0 := fact(~n - 1);< 224530#factENTRY ~n := #in~n; 224537#L25 assume !(~n <= 0); 224488#L26 call #t~ret0 := fact(~n - 1);< 224530#factENTRY ~n := #in~n; 224537#L25 assume !(~n <= 0); 224488#L26 call #t~ret0 := fact(~n - 1);< 224530#factENTRY ~n := #in~n; 224539#L25 assume ~n <= 0;#res := 1; 224536#factFINAL assume true; 224527#factEXIT >#66#return; 224529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224822#factFINAL assume true; 224778#factEXIT >#66#return; 224514#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224487#factFINAL assume true; 224502#factEXIT >#66#return; 224517#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224982#factFINAL assume true; 224981#factEXIT >#66#return; 224966#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 224975#factFINAL assume true; 224962#factEXIT >#66#return; 224974#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225184#factFINAL assume true; 225179#factEXIT >#74#return; 225111#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 225112#factENTRY ~n := #in~n; 225302#L25 assume !(~n <= 0); 224452#L26 call #t~ret0 := fact(~n - 1);< 224540#factENTRY ~n := #in~n; 224512#L25 assume ~n <= 0;#res := 1; 224513#factFINAL assume true; 224450#factEXIT >#66#return; 224476#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225536#factFINAL assume true; 225110#factEXIT >#76#return; 224435#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 225103#factENTRY ~n := #in~n; 225267#L25 assume !(~n <= 0); 224466#L26 call #t~ret0 := fact(~n - 1);< 224486#factENTRY ~n := #in~n; 224512#L25 assume ~n <= 0;#res := 1; 224513#factFINAL assume true; 224450#factEXIT >#66#return; 224481#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 225262#factFINAL assume true; 224434#factEXIT >#78#return; 224433#L30-8 [2022-07-13 03:12:03,956 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:03,956 INFO L85 PathProgramCache]: Analyzing trace with hash 1352432565, now seen corresponding path program 21 times [2022-07-13 03:12:03,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:03,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [993393874] [2022-07-13 03:12:03,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:03,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:03,964 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:03,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [220476793] [2022-07-13 03:12:03,964 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-13 03:12:03,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:03,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:03,967 INFO L229 MonitoredProcess]: Starting monitored process 141 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:12:03,967 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (141)] Waiting until timeout for monitored process [2022-07-13 03:12:04,121 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2022-07-13 03:12:04,121 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:04,122 INFO L263 TraceCheckSpWp]: Trace formula consists of 460 conjuncts, 17 conjunts are in the unsatisfiable core [2022-07-13 03:12:04,124 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:04,401 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 1200 proven. 209 refuted. 0 times theorem prover too weak. 1965 trivial. 0 not checked. [2022-07-13 03:12:04,401 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:04,955 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 192 proven. 292 refuted. 0 times theorem prover too weak. 2890 trivial. 0 not checked. [2022-07-13 03:12:04,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:04,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [993393874] [2022-07-13 03:12:04,956 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:04,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [220476793] [2022-07-13 03:12:04,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [220476793] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:04,956 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:04,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 17 [2022-07-13 03:12:04,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1234582013] [2022-07-13 03:12:04,956 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:04,957 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:12:04,957 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:04,957 INFO L85 PathProgramCache]: Analyzing trace with hash -421029636, now seen corresponding path program 4 times [2022-07-13 03:12:04,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:04,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [741012764] [2022-07-13 03:12:04,958 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:04,958 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:04,961 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:04,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [427789352] [2022-07-13 03:12:04,962 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:12:04,962 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:04,962 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:04,964 INFO L229 MonitoredProcess]: Starting monitored process 142 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:12:04,978 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (142)] Waiting until timeout for monitored process [2022-07-13 03:12:05,077 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:12:05,077 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:05,078 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:12:05,079 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:05,260 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 54 proven. 95 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-07-13 03:12:05,260 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:06,382 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 52 proven. 114 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2022-07-13 03:12:06,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:06,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [741012764] [2022-07-13 03:12:06,382 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:06,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [427789352] [2022-07-13 03:12:06,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [427789352] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:06,383 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:06,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 16] total 21 [2022-07-13 03:12:06,383 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2102211645] [2022-07-13 03:12:06,383 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:06,383 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:12:06,383 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:06,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-07-13 03:12:06,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=377, Unknown=0, NotChecked=0, Total=462 [2022-07-13 03:12:06,384 INFO L87 Difference]: Start difference. First operand 3566 states and 5356 transitions. cyclomatic complexity: 1848 Second operand has 22 states, 17 states have (on average 2.411764705882353) internal successors, (41), 17 states have internal predecessors, (41), 13 states have call successors, (13), 1 states have call predecessors, (13), 8 states have return successors, (17), 11 states have call predecessors, (17), 13 states have call successors, (17) [2022-07-13 03:12:07,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:07,169 INFO L93 Difference]: Finished difference Result 5267 states and 7828 transitions. [2022-07-13 03:12:07,170 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-07-13 03:12:07,170 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5267 states and 7828 transitions. [2022-07-13 03:12:07,191 INFO L131 ngComponentsAnalysis]: Automaton has 23 accepting balls. 980 [2022-07-13 03:12:07,215 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5267 states to 5206 states and 7744 transitions. [2022-07-13 03:12:07,215 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1767 [2022-07-13 03:12:07,217 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1767 [2022-07-13 03:12:07,217 INFO L73 IsDeterministic]: Start isDeterministic. Operand 5206 states and 7744 transitions. [2022-07-13 03:12:07,217 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:07,217 INFO L369 hiAutomatonCegarLoop]: Abstraction has 5206 states and 7744 transitions. [2022-07-13 03:12:07,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 5206 states and 7744 transitions. [2022-07-13 03:12:07,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 5206 to 3606. [2022-07-13 03:12:07,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3606 states, 2261 states have (on average 1.0747456877487838) internal successors, (2430), 2237 states have internal predecessors, (2430), 922 states have call successors, (993), 403 states have call predecessors, (993), 423 states have return successors, (1949), 965 states have call predecessors, (1949), 922 states have call successors, (1949) [2022-07-13 03:12:07,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3606 states to 3606 states and 5372 transitions. [2022-07-13 03:12:07,299 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3606 states and 5372 transitions. [2022-07-13 03:12:07,299 INFO L374 stractBuchiCegarLoop]: Abstraction has 3606 states and 5372 transitions. [2022-07-13 03:12:07,299 INFO L287 stractBuchiCegarLoop]: ======== Iteration 36 ============ [2022-07-13 03:12:07,299 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3606 states and 5372 transitions. [2022-07-13 03:12:07,308 INFO L131 ngComponentsAnalysis]: Automaton has 23 accepting balls. 624 [2022-07-13 03:12:07,308 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:07,308 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:07,309 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [39, 39, 21, 18, 18, 18, 18, 7, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:07,309 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [11, 11, 8, 8, 8, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:07,310 INFO L752 eck$LassoCheckResult]: Stem: 234044#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 234017#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 234018#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 234043#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 234068#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 234788#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 234786#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 234782#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 234783#factENTRY ~n := #in~n; 234787#L25 assume ~n <= 0;#res := 1; 234785#factFINAL assume true; 234781#factEXIT >#68#return; 234777#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 234778#factENTRY ~n := #in~n; 234784#L25 assume ~n <= 0;#res := 1; 234780#factFINAL assume true; 234776#factEXIT >#70#return; 234773#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 234774#factENTRY ~n := #in~n; 234779#L25 assume ~n <= 0;#res := 1; 234775#factFINAL assume true; 234772#factEXIT >#72#return; 234770#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 234767#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 234763#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 234760#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 234755#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 234737#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 234738#factENTRY ~n := #in~n; 234769#L25 assume !(~n <= 0); 234765#L26 call #t~ret0 := fact(~n - 1);< 234766#factENTRY ~n := #in~n; 234771#L25 assume ~n <= 0;#res := 1; 234768#factFINAL assume true; 234764#factEXIT >#66#return; 234762#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234754#factFINAL assume true; 234736#factEXIT >#74#return; 234728#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 234730#factENTRY ~n := #in~n; 234753#L25 assume ~n <= 0;#res := 1; 234732#factFINAL assume true; 234725#factEXIT >#76#return; 234721#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 234723#factENTRY ~n := #in~n; 234759#L25 assume !(~n <= 0); 234746#L26 call #t~ret0 := fact(~n - 1);< 234752#factENTRY ~n := #in~n; 234761#L25 assume ~n <= 0;#res := 1; 234756#factFINAL assume true; 234739#factEXIT >#66#return; 234731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234724#factFINAL assume true; 234719#factEXIT >#78#return; 234718#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 234717#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 234716#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 234715#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 234713#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 234591#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 234649#factENTRY ~n := #in~n; 234647#L25 assume !(~n <= 0); 234629#L26 call #t~ret0 := fact(~n - 1);< 234645#factENTRY ~n := #in~n; 234658#L25 assume !(~n <= 0); 234628#L26 call #t~ret0 := fact(~n - 1);< 234630#factENTRY ~n := #in~n; 234653#L25 assume ~n <= 0;#res := 1; 234641#factFINAL assume true; 234642#factEXIT >#66#return; 234695#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234694#factFINAL assume true; 234691#factEXIT >#66#return; 234692#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234595#factFINAL assume true; 234596#factEXIT >#74#return; 234711#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 234709#factENTRY ~n := #in~n; 234813#L25 assume ~n <= 0;#res := 1; 234814#factFINAL assume true; 234905#factEXIT >#76#return; 234663#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 234917#factENTRY ~n := #in~n; 234700#L25 assume !(~n <= 0); 234611#L26 call #t~ret0 := fact(~n - 1);< 234664#factENTRY ~n := #in~n; 234690#L25 assume !(~n <= 0); 234613#L26 call #t~ret0 := fact(~n - 1);< 234684#factENTRY ~n := #in~n; 234688#L25 assume ~n <= 0;#res := 1; 234687#factFINAL assume true; 234682#factEXIT >#66#return; 234680#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234677#factFINAL assume true; 234666#factEXIT >#66#return; 234674#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 234920#factFINAL assume true; 234914#factEXIT >#78#return; 234563#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 234561#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 234559#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 234543#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 234542#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 234539#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 234055#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 234056#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 235248#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 235250#factENTRY ~n := #in~n; 235344#L25 assume !(~n <= 0); 235275#L26 call #t~ret0 := fact(~n - 1);< 235276#factENTRY ~n := #in~n; 235312#L25 assume ~n <= 0;#res := 1; 235307#factFINAL assume true; 235274#factEXIT >#66#return; 235272#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235270#factFINAL assume true; 235247#factEXIT >#68#return; 235235#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 235239#factENTRY ~n := #in~n; 235267#L25 assume ~n <= 0;#res := 1; 235245#factFINAL assume true; 235233#factEXIT >#70#return; 235227#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 235230#factENTRY ~n := #in~n; 235366#L25 assume !(~n <= 0); 235252#L26 call #t~ret0 := fact(~n - 1);< 235304#factENTRY ~n := #in~n; 235279#L25 assume ~n <= 0;#res := 1; 235278#factFINAL assume true; 235251#factEXIT >#66#return; 235240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235231#factFINAL assume true; 235226#factEXIT >#72#return; 235225#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 235224#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 235223#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 235222#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 235221#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 234010#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 234011#factENTRY ~n := #in~n; 235369#L25 assume !(~n <= 0); 235257#L26 call #t~ret0 := fact(~n - 1);< 235260#factENTRY ~n := #in~n; 235279#L25 assume ~n <= 0;#res := 1; 235278#factFINAL assume true; 235251#factEXIT >#66#return; 235259#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235946#factFINAL assume true; 235942#factEXIT >#68#return; 235936#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 235937#factENTRY ~n := #in~n; 235989#L25 assume !(~n <= 0); 235957#L26 call #t~ret0 := fact(~n - 1);< 235963#factENTRY ~n := #in~n; 235991#L25 assume ~n <= 0;#res := 1; 235966#factFINAL assume true; 235955#factEXIT >#66#return; 235945#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235941#factFINAL assume true; 235935#factEXIT >#70#return; 235919#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 235922#factENTRY ~n := #in~n; 235938#L25 assume ~n <= 0;#res := 1; 235934#factFINAL assume true; 235915#factEXIT >#72#return; 235913#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 235911#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 235906#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 235902#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 235888#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 235843#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 235845#factENTRY ~n := #in~n; 235904#L25 assume !(~n <= 0); 235870#L26 call #t~ret0 := fact(~n - 1);< 235885#factENTRY ~n := #in~n; 235912#L25 assume !(~n <= 0); 235872#L26 call #t~ret0 := fact(~n - 1);< 235910#factENTRY ~n := #in~n; 235929#L25 assume ~n <= 0;#res := 1; 235926#factFINAL assume true; 235907#factEXIT >#66#return; 235905#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235893#factFINAL assume true; 235866#factEXIT >#66#return; 235865#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235863#factFINAL assume true; 235842#factEXIT >#74#return; 235835#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 235838#factENTRY ~n := #in~n; 236769#L25 assume !(~n <= 0); 235491#L26 call #t~ret0 := fact(~n - 1);< 236482#factENTRY ~n := #in~n; 236539#L25 assume ~n <= 0;#res := 1; 236534#factFINAL assume true; 236519#factEXIT >#66#return; 236531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 236767#factFINAL assume true; 236766#factEXIT >#76#return; 236762#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 236764#factENTRY ~n := #in~n; 236768#L25 assume !(~n <= 0); 236522#L26 call #t~ret0 := fact(~n - 1);< 236533#factENTRY ~n := #in~n; 236539#L25 assume ~n <= 0;#res := 1; 236534#factFINAL assume true; 236519#factEXIT >#66#return; 236528#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 236765#factFINAL assume true; 236760#factEXIT >#78#return; 236759#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 236758#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 236757#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 236756#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 236755#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 236039#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 236040#factENTRY ~n := #in~n; 236046#L25 assume !(~n <= 0); 235400#L26 call #t~ret0 := fact(~n - 1);< 235554#factENTRY ~n := #in~n; 235566#L25 assume !(~n <= 0); 235402#L26 call #t~ret0 := fact(~n - 1);< 235563#factENTRY ~n := #in~n; 235567#L25 assume ~n <= 0;#res := 1; 235564#factFINAL assume true; 235560#factEXIT >#66#return; 235558#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 235480#factFINAL assume true; 235492#factEXIT >#66#return; 235591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 236045#factFINAL assume true; 236038#factEXIT >#74#return; 235836#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 235841#factENTRY ~n := #in~n; 237377#L25 assume ~n <= 0;#res := 1; 237378#factFINAL assume true; 237533#factEXIT >#76#return; 234003#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 234012#factENTRY ~n := #in~n; 234013#L25 assume !(~n <= 0); 237065#L26 call #t~ret0 := fact(~n - 1);< 237140#factENTRY ~n := #in~n; 237151#L25 assume !(~n <= 0); 237073#L26 call #t~ret0 := fact(~n - 1);< 237147#factENTRY ~n := #in~n; 237149#L25 assume ~n <= 0;#res := 1; 237148#factFINAL assume true; 237144#factEXIT >#66#return; 237143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237139#factFINAL assume true; 237111#factEXIT >#66#return; 237132#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237577#factFINAL assume true; 237570#factEXIT >#78#return; 233994#L30-8 [2022-07-13 03:12:07,310 INFO L754 eck$LassoCheckResult]: Loop: 233994#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 234019#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 234028#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 234066#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 237186#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 233988#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 233989#factENTRY ~n := #in~n; 237171#L25 assume !(~n <= 0); 237053#L26 call #t~ret0 := fact(~n - 1);< 237179#factENTRY ~n := #in~n; 237151#L25 assume !(~n <= 0); 237073#L26 call #t~ret0 := fact(~n - 1);< 237147#factENTRY ~n := #in~n; 237151#L25 assume !(~n <= 0); 237073#L26 call #t~ret0 := fact(~n - 1);< 237147#factENTRY ~n := #in~n; 237151#L25 assume !(~n <= 0); 237073#L26 call #t~ret0 := fact(~n - 1);< 237147#factENTRY ~n := #in~n; 237151#L25 assume !(~n <= 0); 237073#L26 call #t~ret0 := fact(~n - 1);< 237147#factENTRY ~n := #in~n; 237149#L25 assume ~n <= 0;#res := 1; 237148#factFINAL assume true; 237144#factEXIT >#66#return; 237143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237139#factFINAL assume true; 237111#factEXIT >#66#return; 237110#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237108#factFINAL assume true; 237100#factEXIT >#66#return; 237099#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237096#factFINAL assume true; 237095#factEXIT >#66#return; 237074#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237087#factFINAL assume true; 237049#factEXIT >#66#return; 237075#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237234#factFINAL assume true; 237233#factEXIT >#74#return; 237231#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 237232#factENTRY ~n := #in~n; 237239#L25 assume !(~n <= 0); 237112#L26 call #t~ret0 := fact(~n - 1);< 237256#factENTRY ~n := #in~n; 237150#L25 assume !(~n <= 0); 237145#L26 call #t~ret0 := fact(~n - 1);< 237146#factENTRY ~n := #in~n; 237149#L25 assume ~n <= 0;#res := 1; 237148#factFINAL assume true; 237144#factEXIT >#66#return; 237143#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237139#factFINAL assume true; 237111#factEXIT >#66#return; 237126#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237497#factFINAL assume true; 237495#factEXIT >#76#return; 237258#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 237274#factENTRY ~n := #in~n; 237496#L25 assume !(~n <= 0); 237054#L26 call #t~ret0 := fact(~n - 1);< 237179#factENTRY ~n := #in~n; 237260#L25 assume ~n <= 0;#res := 1; 237257#factFINAL assume true; 237241#factEXIT >#66#return; 237102#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 237580#factFINAL assume true; 237571#factEXIT >#78#return; 233994#L30-8 [2022-07-13 03:12:07,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:07,310 INFO L85 PathProgramCache]: Analyzing trace with hash 1352432565, now seen corresponding path program 22 times [2022-07-13 03:12:07,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:07,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [681227480] [2022-07-13 03:12:07,311 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:07,311 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:07,319 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:07,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1450804945] [2022-07-13 03:12:07,319 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-13 03:12:07,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:07,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:07,322 INFO L229 MonitoredProcess]: Starting monitored process 143 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:12:07,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (143)] Waiting until timeout for monitored process [2022-07-13 03:12:07,510 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-13 03:12:07,510 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:07,512 INFO L263 TraceCheckSpWp]: Trace formula consists of 589 conjuncts, 10 conjunts are in the unsatisfiable core [2022-07-13 03:12:07,514 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:07,627 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 1041 proven. 71 refuted. 0 times theorem prover too weak. 2262 trivial. 0 not checked. [2022-07-13 03:12:07,627 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:07,889 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 33 proven. 71 refuted. 0 times theorem prover too weak. 3270 trivial. 0 not checked. [2022-07-13 03:12:07,890 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:07,890 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [681227480] [2022-07-13 03:12:07,890 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:07,890 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1450804945] [2022-07-13 03:12:07,890 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1450804945] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:07,890 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:07,890 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 15 [2022-07-13 03:12:07,891 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [947375225] [2022-07-13 03:12:07,891 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:07,891 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:12:07,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:07,891 INFO L85 PathProgramCache]: Analyzing trace with hash -6259132, now seen corresponding path program 5 times [2022-07-13 03:12:07,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:07,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [349549920] [2022-07-13 03:12:07,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:07,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:07,895 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:07,896 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2145122279] [2022-07-13 03:12:07,896 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:12:07,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:07,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:07,899 INFO L229 MonitoredProcess]: Starting monitored process 144 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:12:07,926 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (144)] Waiting until timeout for monitored process [2022-07-13 03:12:08,021 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 12 check-sat command(s) [2022-07-13 03:12:08,022 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:08,023 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-13 03:12:08,024 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:08,183 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 81 proven. 110 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-07-13 03:12:08,184 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:09,134 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 81 proven. 129 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-07-13 03:12:09,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:09,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [349549920] [2022-07-13 03:12:09,135 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:09,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2145122279] [2022-07-13 03:12:09,135 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2145122279] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:09,135 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:09,135 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 17] total 20 [2022-07-13 03:12:09,135 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1683961687] [2022-07-13 03:12:09,135 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:09,135 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:12:09,135 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:09,136 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-07-13 03:12:09,136 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-07-13 03:12:09,136 INFO L87 Difference]: Start difference. First operand 3606 states and 5372 transitions. cyclomatic complexity: 1824 Second operand has 21 states, 17 states have (on average 2.5294117647058822) internal successors, (43), 17 states have internal predecessors, (43), 12 states have call successors, (13), 1 states have call predecessors, (13), 8 states have return successors, (17), 11 states have call predecessors, (17), 12 states have call successors, (17) [2022-07-13 03:12:09,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:09,832 INFO L93 Difference]: Finished difference Result 4228 states and 6092 transitions. [2022-07-13 03:12:09,833 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-07-13 03:12:09,833 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4228 states and 6092 transitions. [2022-07-13 03:12:09,851 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 713 [2022-07-13 03:12:09,866 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4228 states to 4050 states and 5788 transitions. [2022-07-13 03:12:09,866 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1337 [2022-07-13 03:12:09,867 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1337 [2022-07-13 03:12:09,867 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4050 states and 5788 transitions. [2022-07-13 03:12:09,867 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:09,867 INFO L369 hiAutomatonCegarLoop]: Abstraction has 4050 states and 5788 transitions. [2022-07-13 03:12:09,868 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4050 states and 5788 transitions. [2022-07-13 03:12:09,911 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4050 to 3292. [2022-07-13 03:12:09,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3292 states, 2061 states have (on average 1.0786026200873362) internal successors, (2223), 2036 states have internal predecessors, (2223), 846 states have call successors, (909), 375 states have call predecessors, (909), 385 states have return successors, (1697), 880 states have call predecessors, (1697), 846 states have call successors, (1697) [2022-07-13 03:12:09,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3292 states to 3292 states and 4829 transitions. [2022-07-13 03:12:09,925 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3292 states and 4829 transitions. [2022-07-13 03:12:09,925 INFO L374 stractBuchiCegarLoop]: Abstraction has 3292 states and 4829 transitions. [2022-07-13 03:12:09,925 INFO L287 stractBuchiCegarLoop]: ======== Iteration 37 ============ [2022-07-13 03:12:09,925 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3292 states and 4829 transitions. [2022-07-13 03:12:09,934 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 556 [2022-07-13 03:12:09,934 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:09,934 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:09,935 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [41, 41, 21, 20, 20, 20, 20, 7, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:09,935 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:09,935 INFO L752 eck$LassoCheckResult]: Stem: 243854#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 243828#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 243829#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 243853#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 243876#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 244575#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 244573#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 244569#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 244570#factENTRY ~n := #in~n; 244574#L25 assume ~n <= 0;#res := 1; 244572#factFINAL assume true; 244568#factEXIT >#68#return; 244564#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 244565#factENTRY ~n := #in~n; 244571#L25 assume ~n <= 0;#res := 1; 244567#factFINAL assume true; 244563#factEXIT >#70#return; 244560#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 244561#factENTRY ~n := #in~n; 244566#L25 assume ~n <= 0;#res := 1; 244562#factFINAL assume true; 244559#factEXIT >#72#return; 244558#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 244557#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 244555#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244551#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 244544#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 244528#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 244529#factENTRY ~n := #in~n; 244554#L25 assume !(~n <= 0); 244549#L26 call #t~ret0 := fact(~n - 1);< 244550#factENTRY ~n := #in~n; 244556#L25 assume ~n <= 0;#res := 1; 244553#factFINAL assume true; 244548#factEXIT >#66#return; 244543#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244542#factFINAL assume true; 244527#factEXIT >#74#return; 244516#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 244520#factENTRY ~n := #in~n; 244541#L25 assume ~n <= 0;#res := 1; 244526#factFINAL assume true; 244515#factEXIT >#76#return; 244510#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 244513#factENTRY ~n := #in~n; 244540#L25 assume !(~n <= 0); 244534#L26 call #t~ret0 := fact(~n - 1);< 244539#factENTRY ~n := #in~n; 244552#L25 assume ~n <= 0;#res := 1; 244545#factFINAL assume true; 244530#factEXIT >#66#return; 244521#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244514#factFINAL assume true; 244509#factEXIT >#78#return; 244508#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 244507#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 244506#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244505#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 244503#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 244346#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 244348#factENTRY ~n := #in~n; 244361#L25 assume !(~n <= 0); 244355#L26 call #t~ret0 := fact(~n - 1);< 244400#factENTRY ~n := #in~n; 244412#L25 assume !(~n <= 0); 244356#L26 call #t~ret0 := fact(~n - 1);< 244387#factENTRY ~n := #in~n; 244415#L25 assume ~n <= 0;#res := 1; 244401#factFINAL assume true; 244402#factEXIT >#66#return; 244370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244371#factFINAL assume true; 244384#factEXIT >#66#return; 244353#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244349#factFINAL assume true; 244350#factEXIT >#74#return; 244465#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 244466#factENTRY ~n := #in~n; 244483#L25 assume ~n <= 0;#res := 1; 244484#factFINAL assume true; 244495#factEXIT >#76#return; 244419#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 244450#factENTRY ~n := #in~n; 244438#L25 assume !(~n <= 0); 244377#L26 call #t~ret0 := fact(~n - 1);< 244420#factENTRY ~n := #in~n; 244435#L25 assume !(~n <= 0); 244378#L26 call #t~ret0 := fact(~n - 1);< 244443#factENTRY ~n := #in~n; 244446#L25 assume ~n <= 0;#res := 1; 244445#factFINAL assume true; 244441#factEXIT >#66#return; 244434#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244431#factFINAL assume true; 244422#factEXIT >#66#return; 244428#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244652#factFINAL assume true; 244462#factEXIT >#78#return; 244332#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 244331#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 244330#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244328#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 244327#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 244304#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 244305#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 245051#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 244933#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 244934#factENTRY ~n := #in~n; 245037#L25 assume !(~n <= 0); 244959#L26 call #t~ret0 := fact(~n - 1);< 244960#factENTRY ~n := #in~n; 244996#L25 assume ~n <= 0;#res := 1; 244991#factFINAL assume true; 244958#factEXIT >#66#return; 244956#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244954#factFINAL assume true; 244931#factEXIT >#68#return; 244918#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 244923#factENTRY ~n := #in~n; 244951#L25 assume ~n <= 0;#res := 1; 244929#factFINAL assume true; 244917#factEXIT >#70#return; 244911#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 244914#factENTRY ~n := #in~n; 245050#L25 assume !(~n <= 0); 244939#L26 call #t~ret0 := fact(~n - 1);< 244988#factENTRY ~n := #in~n; 244963#L25 assume ~n <= 0;#res := 1; 244962#factFINAL assume true; 244935#factEXIT >#66#return; 244924#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 244915#factFINAL assume true; 244910#factEXIT >#72#return; 244909#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 244908#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 244907#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244906#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 244905#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 243810#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 243811#factENTRY ~n := #in~n; 245054#L25 assume !(~n <= 0); 244938#L26 call #t~ret0 := fact(~n - 1);< 244944#factENTRY ~n := #in~n; 244963#L25 assume ~n <= 0;#res := 1; 244962#factFINAL assume true; 244935#factEXIT >#66#return; 244942#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245612#factFINAL assume true; 245609#factEXIT >#68#return; 245596#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 245597#factENTRY ~n := #in~n; 245640#L25 assume !(~n <= 0); 245619#L26 call #t~ret0 := fact(~n - 1);< 245623#factENTRY ~n := #in~n; 245642#L25 assume ~n <= 0;#res := 1; 245624#factFINAL assume true; 245616#factEXIT >#66#return; 245614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245608#factFINAL assume true; 245595#factEXIT >#70#return; 245519#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 245524#factENTRY ~n := #in~n; 245607#L25 assume ~n <= 0;#res := 1; 245593#factFINAL assume true; 245517#factEXIT >#72#return; 245516#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 245514#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 245513#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 245512#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 245510#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 245493#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 245494#factENTRY ~n := #in~n; 245553#L25 assume !(~n <= 0); 245538#L26 call #t~ret0 := fact(~n - 1);< 245552#factENTRY ~n := #in~n; 245613#L25 assume !(~n <= 0); 245536#L26 call #t~ret0 := fact(~n - 1);< 245600#factENTRY ~n := #in~n; 245611#L25 assume ~n <= 0;#res := 1; 245610#factFINAL assume true; 245598#factEXIT >#66#return; 245594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245565#factFINAL assume true; 245533#factEXIT >#66#return; 245531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245530#factFINAL assume true; 245491#factEXIT >#74#return; 245481#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 245486#factENTRY ~n := #in~n; 245604#L25 assume !(~n <= 0); 245199#L26 call #t~ret0 := fact(~n - 1);< 245525#factENTRY ~n := #in~n; 245602#L25 assume ~n <= 0;#res := 1; 245579#factFINAL assume true; 245495#factEXIT >#66#return; 245506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245490#factFINAL assume true; 245480#factEXIT >#76#return; 245476#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 245478#factENTRY ~n := #in~n; 245511#L25 assume !(~n <= 0); 245496#L26 call #t~ret0 := fact(~n - 1);< 245509#factENTRY ~n := #in~n; 245602#L25 assume ~n <= 0;#res := 1; 245579#factFINAL assume true; 245495#factEXIT >#66#return; 245487#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245479#factFINAL assume true; 245474#factEXIT >#78#return; 245473#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 245472#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 245471#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 245468#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 245466#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 245261#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 245317#factENTRY ~n := #in~n; 245316#L25 assume !(~n <= 0); 245141#L26 call #t~ret0 := fact(~n - 1);< 245190#factENTRY ~n := #in~n; 245225#L25 assume !(~n <= 0); 245119#L26 call #t~ret0 := fact(~n - 1);< 245222#factENTRY ~n := #in~n; 245225#L25 assume !(~n <= 0); 245119#L26 call #t~ret0 := fact(~n - 1);< 245222#factENTRY ~n := #in~n; 245225#L25 assume !(~n <= 0); 245119#L26 call #t~ret0 := fact(~n - 1);< 245222#factENTRY ~n := #in~n; 245227#L25 assume ~n <= 0;#res := 1; 245224#factFINAL assume true; 245220#factEXIT >#66#return; 245219#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245210#factFINAL assume true; 245192#factEXIT >#66#return; 245191#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245189#factFINAL assume true; 245179#factEXIT >#66#return; 245116#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 245142#factFINAL assume true; 245166#factEXIT >#66#return; 245178#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246109#factFINAL assume true; 246108#factEXIT >#74#return; 246104#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 246106#factENTRY ~n := #in~n; 246552#L25 assume ~n <= 0;#res := 1; 246553#factFINAL assume true; 246586#factEXIT >#76#return; 243813#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 246584#factENTRY ~n := #in~n; 246583#L25 assume !(~n <= 0); 246303#L26 call #t~ret0 := fact(~n - 1);< 246362#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246380#L25 assume ~n <= 0;#res := 1; 246378#factFINAL assume true; 246366#factEXIT >#66#return; 246365#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246358#factFINAL assume true; 246295#factEXIT >#66#return; 246321#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 247074#factFINAL assume true; 247068#factEXIT >#78#return; 243798#L30-8 [2022-07-13 03:12:09,936 INFO L754 eck$LassoCheckResult]: Loop: 243798#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 247066#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 247064#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 247062#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 247061#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 243792#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 243793#factENTRY ~n := #in~n; 246462#L25 assume !(~n <= 0); 246307#L26 call #t~ret0 := fact(~n - 1);< 246394#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246380#L25 assume ~n <= 0;#res := 1; 246378#factFINAL assume true; 246366#factEXIT >#66#return; 246365#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246358#factFINAL assume true; 246295#factEXIT >#66#return; 246324#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246393#factFINAL assume true; 246381#factEXIT >#66#return; 246379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246373#factFINAL assume true; 246371#factEXIT >#66#return; 246347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246361#factFINAL assume true; 246332#factEXIT >#66#return; 246354#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246873#factFINAL assume true; 246872#factEXIT >#74#return; 243871#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 243872#factENTRY ~n := #in~n; 246548#L25 assume ~n <= 0;#res := 1; 246539#factFINAL assume true; 246502#factEXIT >#76#return; 246374#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 246495#factENTRY ~n := #in~n; 246491#L25 assume !(~n <= 0); 246335#L26 call #t~ret0 := fact(~n - 1);< 246363#factENTRY ~n := #in~n; 246395#L25 assume !(~n <= 0); 246337#L26 call #t~ret0 := fact(~n - 1);< 246388#factENTRY ~n := #in~n; 246389#L25 assume !(~n <= 0); 246310#L26 call #t~ret0 := fact(~n - 1);< 246360#factENTRY ~n := #in~n; 246370#L25 assume !(~n <= 0); 246312#L26 call #t~ret0 := fact(~n - 1);< 246369#factENTRY ~n := #in~n; 246380#L25 assume ~n <= 0;#res := 1; 246378#factFINAL assume true; 246366#factEXIT >#66#return; 246365#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246358#factFINAL assume true; 246295#factEXIT >#66#return; 246324#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246393#factFINAL assume true; 246381#factEXIT >#66#return; 246379#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 246373#factFINAL assume true; 246371#factEXIT >#66#return; 246348#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 247071#factFINAL assume true; 247070#factEXIT >#78#return; 243798#L30-8 [2022-07-13 03:12:09,936 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:09,936 INFO L85 PathProgramCache]: Analyzing trace with hash -822630411, now seen corresponding path program 23 times [2022-07-13 03:12:09,936 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:09,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1596570669] [2022-07-13 03:12:09,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:09,936 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:09,944 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:09,944 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1164309666] [2022-07-13 03:12:09,944 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-13 03:12:09,944 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:09,944 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:09,947 INFO L229 MonitoredProcess]: Starting monitored process 145 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:12:09,948 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (145)] Waiting until timeout for monitored process [2022-07-13 03:12:10,164 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2022-07-13 03:12:10,164 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:10,167 INFO L263 TraceCheckSpWp]: Trace formula consists of 613 conjuncts, 13 conjunts are in the unsatisfiable core [2022-07-13 03:12:10,169 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:10,322 INFO L134 CoverageAnalysis]: Checked inductivity of 3764 backedges. 1437 proven. 104 refuted. 0 times theorem prover too weak. 2223 trivial. 0 not checked. [2022-07-13 03:12:10,322 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:10,673 INFO L134 CoverageAnalysis]: Checked inductivity of 3764 backedges. 104 proven. 156 refuted. 0 times theorem prover too weak. 3504 trivial. 0 not checked. [2022-07-13 03:12:10,673 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:10,673 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1596570669] [2022-07-13 03:12:10,673 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:10,673 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1164309666] [2022-07-13 03:12:10,673 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1164309666] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:10,673 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:10,674 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 18 [2022-07-13 03:12:10,674 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1527556279] [2022-07-13 03:12:10,674 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:10,674 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:12:10,674 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:10,674 INFO L85 PathProgramCache]: Analyzing trace with hash 407180476, now seen corresponding path program 6 times [2022-07-13 03:12:10,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:10,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1781538107] [2022-07-13 03:12:10,674 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:10,674 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:10,678 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:10,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1689489563] [2022-07-13 03:12:10,678 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:12:10,678 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:10,678 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:10,680 INFO L229 MonitoredProcess]: Starting monitored process 146 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:12:10,681 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (146)] Waiting until timeout for monitored process [2022-07-13 03:12:10,791 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2022-07-13 03:12:10,791 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:10,791 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 25 conjunts are in the unsatisfiable core [2022-07-13 03:12:10,792 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:10,987 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 58 proven. 173 refuted. 0 times theorem prover too weak. 105 trivial. 0 not checked. [2022-07-13 03:12:10,987 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:12,765 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 58 proven. 209 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-07-13 03:12:12,765 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:12,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1781538107] [2022-07-13 03:12:12,765 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:12,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1689489563] [2022-07-13 03:12:12,766 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1689489563] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:12,766 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:12,766 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 23] total 26 [2022-07-13 03:12:12,766 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1827959015] [2022-07-13 03:12:12,766 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:12,766 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:12:12,766 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:12,766 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-07-13 03:12:12,767 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=589, Unknown=0, NotChecked=0, Total=702 [2022-07-13 03:12:12,767 INFO L87 Difference]: Start difference. First operand 3292 states and 4829 transitions. cyclomatic complexity: 1591 Second operand has 27 states, 23 states have (on average 2.3043478260869565) internal successors, (53), 23 states have internal predecessors, (53), 15 states have call successors, (15), 1 states have call predecessors, (15), 11 states have return successors, (22), 13 states have call predecessors, (22), 15 states have call successors, (22) [2022-07-13 03:12:13,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:13,840 INFO L93 Difference]: Finished difference Result 4487 states and 6621 transitions. [2022-07-13 03:12:13,842 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-07-13 03:12:13,842 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4487 states and 6621 transitions. [2022-07-13 03:12:13,860 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 864 [2022-07-13 03:12:13,876 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4487 states to 4476 states and 6610 transitions. [2022-07-13 03:12:13,877 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1527 [2022-07-13 03:12:13,877 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1527 [2022-07-13 03:12:13,877 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4476 states and 6610 transitions. [2022-07-13 03:12:13,878 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:13,878 INFO L369 hiAutomatonCegarLoop]: Abstraction has 4476 states and 6610 transitions. [2022-07-13 03:12:13,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4476 states and 6610 transitions. [2022-07-13 03:12:13,928 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4476 to 3423. [2022-07-13 03:12:13,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3423 states, 2139 states have (on average 1.0757363253856942) internal successors, (2301), 2122 states have internal predecessors, (2301), 878 states have call successors, (941), 399 states have call predecessors, (941), 406 states have return successors, (1791), 901 states have call predecessors, (1791), 878 states have call successors, (1791) [2022-07-13 03:12:13,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3423 states to 3423 states and 5033 transitions. [2022-07-13 03:12:13,943 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3423 states and 5033 transitions. [2022-07-13 03:12:13,943 INFO L374 stractBuchiCegarLoop]: Abstraction has 3423 states and 5033 transitions. [2022-07-13 03:12:13,943 INFO L287 stractBuchiCegarLoop]: ======== Iteration 38 ============ [2022-07-13 03:12:13,943 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3423 states and 5033 transitions. [2022-07-13 03:12:13,953 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 557 [2022-07-13 03:12:13,953 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:13,953 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:13,954 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [41, 41, 21, 20, 20, 20, 20, 7, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:13,954 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:13,954 INFO L752 eck$LassoCheckResult]: Stem: 253734#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 253706#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 253707#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 253733#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 253759#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 254522#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 254520#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 254516#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 254517#factENTRY ~n := #in~n; 254521#L25 assume ~n <= 0;#res := 1; 254519#factFINAL assume true; 254515#factEXIT >#68#return; 254511#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 254512#factENTRY ~n := #in~n; 254518#L25 assume ~n <= 0;#res := 1; 254514#factFINAL assume true; 254510#factEXIT >#70#return; 254507#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 254508#factENTRY ~n := #in~n; 254513#L25 assume ~n <= 0;#res := 1; 254509#factFINAL assume true; 254506#factEXIT >#72#return; 254504#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 254501#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 254500#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 254495#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 254489#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 254475#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 254476#factENTRY ~n := #in~n; 254503#L25 assume !(~n <= 0); 254498#L26 call #t~ret0 := fact(~n - 1);< 254499#factENTRY ~n := #in~n; 254505#L25 assume ~n <= 0;#res := 1; 254502#factFINAL assume true; 254497#factEXIT >#66#return; 254493#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254488#factFINAL assume true; 254474#factEXIT >#74#return; 254464#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 254467#factENTRY ~n := #in~n; 254487#L25 assume ~n <= 0;#res := 1; 254473#factFINAL assume true; 254463#factEXIT >#76#return; 254460#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 254461#factENTRY ~n := #in~n; 254494#L25 assume !(~n <= 0); 254480#L26 call #t~ret0 := fact(~n - 1);< 254486#factENTRY ~n := #in~n; 254496#L25 assume ~n <= 0;#res := 1; 254490#factFINAL assume true; 254477#factEXIT >#66#return; 254468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254462#factFINAL assume true; 254458#factEXIT >#78#return; 254457#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 254456#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 254454#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 254453#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 254268#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 254269#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 254278#factENTRY ~n := #in~n; 254280#L25 assume !(~n <= 0); 254313#L26 call #t~ret0 := fact(~n - 1);< 254316#factENTRY ~n := #in~n; 254335#L25 assume !(~n <= 0); 254314#L26 call #t~ret0 := fact(~n - 1);< 254325#factENTRY ~n := #in~n; 254326#L25 assume ~n <= 0;#res := 1; 254317#factFINAL assume true; 254318#factEXIT >#66#return; 254339#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254334#factFINAL assume true; 254322#factEXIT >#66#return; 254324#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254402#factFINAL assume true; 254399#factEXIT >#74#return; 254390#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 254395#factENTRY ~n := #in~n; 254388#L25 assume ~n <= 0;#res := 1; 254391#factFINAL assume true; 254417#factEXIT >#76#return; 254261#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 254446#factENTRY ~n := #in~n; 254412#L25 assume !(~n <= 0); 254287#L26 call #t~ret0 := fact(~n - 1);< 254341#factENTRY ~n := #in~n; 254368#L25 assume !(~n <= 0); 254286#L26 call #t~ret0 := fact(~n - 1);< 254365#factENTRY ~n := #in~n; 254370#L25 assume ~n <= 0;#res := 1; 254367#factFINAL assume true; 254363#factEXIT >#66#return; 254361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254357#factFINAL assume true; 254345#factEXIT >#66#return; 254353#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254448#factFINAL assume true; 254443#factEXIT >#78#return; 254254#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 254253#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 254252#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 254251#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 254247#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 254221#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 254222#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 254975#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 254896#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 254898#factENTRY ~n := #in~n; 254929#L25 assume !(~n <= 0); 254923#L26 call #t~ret0 := fact(~n - 1);< 254924#factENTRY ~n := #in~n; 254941#L25 assume ~n <= 0;#res := 1; 254938#factFINAL assume true; 254922#factEXIT >#66#return; 254920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254918#factFINAL assume true; 254895#factEXIT >#68#return; 254882#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 254887#factENTRY ~n := #in~n; 254915#L25 assume ~n <= 0;#res := 1; 254893#factFINAL assume true; 254881#factEXIT >#70#return; 254876#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 254878#factENTRY ~n := #in~n; 255017#L25 assume !(~n <= 0); 254902#L26 call #t~ret0 := fact(~n - 1);< 254952#factENTRY ~n := #in~n; 254959#L25 assume ~n <= 0;#res := 1; 254930#factFINAL assume true; 254899#factEXIT >#66#return; 254888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 254879#factFINAL assume true; 254874#factEXIT >#72#return; 254873#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 254872#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 254871#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 254870#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 254869#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 253689#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 253690#factENTRY ~n := #in~n; 254953#L25 assume !(~n <= 0); 254901#L26 call #t~ret0 := fact(~n - 1);< 254908#factENTRY ~n := #in~n; 254959#L25 assume ~n <= 0;#res := 1; 254930#factFINAL assume true; 254899#factEXIT >#66#return; 254906#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255397#factFINAL assume true; 255385#factEXIT >#68#return; 255302#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 255303#factENTRY ~n := #in~n; 255461#L25 assume !(~n <= 0); 255337#L26 call #t~ret0 := fact(~n - 1);< 255346#factENTRY ~n := #in~n; 255398#L25 assume ~n <= 0;#res := 1; 255386#factFINAL assume true; 255332#factEXIT >#66#return; 255331#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255309#factFINAL assume true; 255301#factEXIT >#70#return; 255250#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 255255#factENTRY ~n := #in~n; 255299#L25 assume ~n <= 0;#res := 1; 255291#factFINAL assume true; 255248#factEXIT >#72#return; 255247#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 255245#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 255244#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 255243#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 255241#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 255223#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 255224#factENTRY ~n := #in~n; 255408#L25 assume !(~n <= 0); 255341#L26 call #t~ret0 := fact(~n - 1);< 255363#factENTRY ~n := #in~n; 255413#L25 assume !(~n <= 0); 255352#L26 call #t~ret0 := fact(~n - 1);< 255401#factENTRY ~n := #in~n; 255410#L25 assume ~n <= 0;#res := 1; 255409#factFINAL assume true; 255399#factEXIT >#66#return; 255393#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255369#factFINAL assume true; 255351#factEXIT >#66#return; 255349#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255261#factFINAL assume true; 255221#factEXIT >#74#return; 255212#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 255216#factENTRY ~n := #in~n; 255305#L25 assume !(~n <= 0); 255153#L26 call #t~ret0 := fact(~n - 1);< 255256#factENTRY ~n := #in~n; 255366#L25 assume ~n <= 0;#res := 1; 255276#factFINAL assume true; 255225#factEXIT >#66#return; 255233#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255220#factFINAL assume true; 255211#factEXIT >#76#return; 255207#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 255209#factENTRY ~n := #in~n; 255242#L25 assume !(~n <= 0); 255230#L26 call #t~ret0 := fact(~n - 1);< 255240#factENTRY ~n := #in~n; 255366#L25 assume ~n <= 0;#res := 1; 255276#factFINAL assume true; 255225#factEXIT >#66#return; 255217#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255210#factFINAL assume true; 255206#factEXIT >#78#return; 255205#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 255204#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 255203#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 255202#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 255201#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 255190#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 255192#factENTRY ~n := #in~n; 255200#L25 assume !(~n <= 0); 255070#L26 call #t~ret0 := fact(~n - 1);< 255172#factENTRY ~n := #in~n; 255182#L25 assume !(~n <= 0); 255074#L26 call #t~ret0 := fact(~n - 1);< 255178#factENTRY ~n := #in~n; 255182#L25 assume !(~n <= 0); 255074#L26 call #t~ret0 := fact(~n - 1);< 255178#factENTRY ~n := #in~n; 255182#L25 assume !(~n <= 0); 255074#L26 call #t~ret0 := fact(~n - 1);< 255178#factENTRY ~n := #in~n; 255184#L25 assume ~n <= 0;#res := 1; 255181#factFINAL assume true; 255176#factEXIT >#66#return; 255174#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255169#factFINAL assume true; 255148#factEXIT >#66#return; 255130#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255123#factFINAL assume true; 255100#factEXIT >#66#return; 255105#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255425#factFINAL assume true; 255089#factEXIT >#66#return; 255096#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255695#factFINAL assume true; 255694#factEXIT >#74#return; 255283#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 255692#factENTRY ~n := #in~n; 256801#L25 assume ~n <= 0;#res := 1; 256800#factFINAL assume true; 256798#factEXIT >#76#return; 253678#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 256444#factENTRY ~n := #in~n; 256423#L25 assume !(~n <= 0); 255963#L26 call #t~ret0 := fact(~n - 1);< 256042#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256041#L25 assume ~n <= 0;#res := 1; 256038#factFINAL assume true; 256034#factEXIT >#66#return; 256033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256029#factFINAL assume true; 256009#factEXIT >#66#return; 256020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 257068#factFINAL assume true; 257063#factEXIT >#78#return; 253679#L30-8 [2022-07-13 03:12:13,954 INFO L754 eck$LassoCheckResult]: Loop: 253679#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 253708#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 253718#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 253740#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 253741#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 256059#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 256061#factENTRY ~n := #in~n; 256060#L25 assume !(~n <= 0); 255953#L26 call #t~ret0 := fact(~n - 1);< 256032#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256041#L25 assume ~n <= 0;#res := 1; 256038#factFINAL assume true; 256034#factEXIT >#66#return; 256033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256029#factFINAL assume true; 256009#factEXIT >#66#return; 256008#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256000#factFINAL assume true; 255991#factEXIT >#66#return; 255990#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255988#factFINAL assume true; 255986#factEXIT >#66#return; 255973#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 255982#factFINAL assume true; 255941#factEXIT >#66#return; 255976#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256112#factFINAL assume true; 256110#factEXIT >#74#return; 256107#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 256108#factENTRY ~n := #in~n; 256111#L25 assume !(~n <= 0); 256011#L26 call #t~ret0 := fact(~n - 1);< 256232#factENTRY ~n := #in~n; 256040#L25 assume !(~n <= 0); 256035#L26 call #t~ret0 := fact(~n - 1);< 256037#factENTRY ~n := #in~n; 256041#L25 assume ~n <= 0;#res := 1; 256038#factFINAL assume true; 256034#factEXIT >#66#return; 256033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256029#factFINAL assume true; 256009#factEXIT >#66#return; 256021#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256975#factFINAL assume true; 256799#factEXIT >#76#return; 256243#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 257066#factENTRY ~n := #in~n; 257071#L25 assume !(~n <= 0); 255949#L26 call #t~ret0 := fact(~n - 1);< 256042#factENTRY ~n := #in~n; 256039#L25 assume !(~n <= 0); 255966#L26 call #t~ret0 := fact(~n - 1);< 256036#factENTRY ~n := #in~n; 256041#L25 assume ~n <= 0;#res := 1; 256038#factFINAL assume true; 256034#factEXIT >#66#return; 256033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 256029#factFINAL assume true; 256009#factEXIT >#66#return; 255998#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 257076#factFINAL assume true; 257075#factEXIT >#78#return; 253679#L30-8 [2022-07-13 03:12:13,955 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:13,955 INFO L85 PathProgramCache]: Analyzing trace with hash -822630411, now seen corresponding path program 24 times [2022-07-13 03:12:13,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:13,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2022917437] [2022-07-13 03:12:13,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:13,955 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:13,963 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:13,963 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1450206244] [2022-07-13 03:12:13,963 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-13 03:12:13,963 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:13,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:13,965 INFO L229 MonitoredProcess]: Starting monitored process 147 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:12:13,966 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (147)] Waiting until timeout for monitored process [2022-07-13 03:12:14,138 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-07-13 03:12:14,139 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-13 03:12:14,140 INFO L263 TraceCheckSpWp]: Trace formula consists of 345 conjuncts, 10 conjunts are in the unsatisfiable core [2022-07-13 03:12:14,143 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:14,327 INFO L134 CoverageAnalysis]: Checked inductivity of 3764 backedges. 1336 proven. 76 refuted. 0 times theorem prover too weak. 2352 trivial. 0 not checked. [2022-07-13 03:12:14,328 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:14,748 INFO L134 CoverageAnalysis]: Checked inductivity of 3764 backedges. 15 proven. 77 refuted. 0 times theorem prover too weak. 3672 trivial. 0 not checked. [2022-07-13 03:12:14,749 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:14,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2022917437] [2022-07-13 03:12:14,749 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:14,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1450206244] [2022-07-13 03:12:14,749 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1450206244] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:14,749 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:14,749 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2022-07-13 03:12:14,749 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1309146252] [2022-07-13 03:12:14,749 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:14,750 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:12:14,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:14,750 INFO L85 PathProgramCache]: Analyzing trace with hash -1045794116, now seen corresponding path program 7 times [2022-07-13 03:12:14,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:14,750 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [817050052] [2022-07-13 03:12:14,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:14,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:14,754 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:14,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [482282775] [2022-07-13 03:12:14,754 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:12:14,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:14,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:14,759 INFO L229 MonitoredProcess]: Starting monitored process 148 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:12:14,760 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (148)] Waiting until timeout for monitored process [2022-07-13 03:12:14,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:14,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 25 conjunts are in the unsatisfiable core [2022-07-13 03:12:14,873 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:15,056 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 65 proven. 160 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2022-07-13 03:12:15,056 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:16,484 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 65 proven. 192 refuted. 0 times theorem prover too weak. 79 trivial. 0 not checked. [2022-07-13 03:12:16,484 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:16,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [817050052] [2022-07-13 03:12:16,484 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:16,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [482282775] [2022-07-13 03:12:16,484 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [482282775] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:16,484 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:16,484 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 19] total 22 [2022-07-13 03:12:16,484 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [655893551] [2022-07-13 03:12:16,484 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:16,485 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-13 03:12:16,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-13 03:12:16,485 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-07-13 03:12:16,485 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=419, Unknown=0, NotChecked=0, Total=506 [2022-07-13 03:12:16,485 INFO L87 Difference]: Start difference. First operand 3423 states and 5033 transitions. cyclomatic complexity: 1664 Second operand has 23 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 19 states have internal predecessors, (45), 13 states have call successors, (13), 1 states have call predecessors, (13), 9 states have return successors, (18), 11 states have call predecessors, (18), 13 states have call successors, (18) [2022-07-13 03:12:17,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-13 03:12:17,259 INFO L93 Difference]: Finished difference Result 4357 states and 6472 transitions. [2022-07-13 03:12:17,261 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-07-13 03:12:17,261 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4357 states and 6472 transitions. [2022-07-13 03:12:17,282 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 862 [2022-07-13 03:12:17,300 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4357 states to 4345 states and 6460 transitions. [2022-07-13 03:12:17,300 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1455 [2022-07-13 03:12:17,301 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1455 [2022-07-13 03:12:17,301 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4345 states and 6460 transitions. [2022-07-13 03:12:17,301 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-13 03:12:17,301 INFO L369 hiAutomatonCegarLoop]: Abstraction has 4345 states and 6460 transitions. [2022-07-13 03:12:17,302 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4345 states and 6460 transitions. [2022-07-13 03:12:17,342 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4345 to 3439. [2022-07-13 03:12:17,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3439 states, 2147 states have (on average 1.0754541220307405) internal successors, (2309), 2130 states have internal predecessors, (2309), 883 states have call successors, (946), 400 states have call predecessors, (946), 409 states have return successors, (1807), 908 states have call predecessors, (1807), 883 states have call successors, (1807) [2022-07-13 03:12:17,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3439 states to 3439 states and 5062 transitions. [2022-07-13 03:12:17,356 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3439 states and 5062 transitions. [2022-07-13 03:12:17,356 INFO L374 stractBuchiCegarLoop]: Abstraction has 3439 states and 5062 transitions. [2022-07-13 03:12:17,356 INFO L287 stractBuchiCegarLoop]: ======== Iteration 39 ============ [2022-07-13 03:12:17,356 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3439 states and 5062 transitions. [2022-07-13 03:12:17,366 INFO L131 ngComponentsAnalysis]: Automaton has 22 accepting balls. 558 [2022-07-13 03:12:17,366 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-13 03:12:17,367 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-13 03:12:17,367 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [39, 39, 21, 18, 18, 18, 18, 7, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:17,367 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [13, 13, 10, 10, 10, 10, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-13 03:12:17,368 INFO L752 eck$LassoCheckResult]: Stem: 263620#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 263593#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 263594#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 263619#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 263648#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 264377#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 264375#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 264371#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 264372#factENTRY ~n := #in~n; 264376#L25 assume ~n <= 0;#res := 1; 264374#factFINAL assume true; 264370#factEXIT >#68#return; 264366#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 264367#factENTRY ~n := #in~n; 264373#L25 assume ~n <= 0;#res := 1; 264369#factFINAL assume true; 264365#factEXIT >#70#return; 264362#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 264363#factENTRY ~n := #in~n; 264368#L25 assume ~n <= 0;#res := 1; 264364#factFINAL assume true; 264361#factEXIT >#72#return; 264360#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 264358#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 264355#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 264349#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 264344#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 264330#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 264331#factENTRY ~n := #in~n; 264357#L25 assume !(~n <= 0); 264353#L26 call #t~ret0 := fact(~n - 1);< 264354#factENTRY ~n := #in~n; 264359#L25 assume ~n <= 0;#res := 1; 264356#factFINAL assume true; 264352#factEXIT >#66#return; 264348#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264343#factFINAL assume true; 264329#factEXIT >#74#return; 264320#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 264322#factENTRY ~n := #in~n; 264342#L25 assume ~n <= 0;#res := 1; 264328#factFINAL assume true; 264317#factEXIT >#76#return; 264313#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 264315#factENTRY ~n := #in~n; 264351#L25 assume !(~n <= 0); 264334#L26 call #t~ret0 := fact(~n - 1);< 264341#factENTRY ~n := #in~n; 264350#L25 assume ~n <= 0;#res := 1; 264345#factFINAL assume true; 264332#factEXIT >#66#return; 264323#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264316#factFINAL assume true; 264311#factEXIT >#78#return; 264310#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 264309#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 264307#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 264306#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 264304#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 264159#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 264173#factENTRY ~n := #in~n; 264174#L25 assume !(~n <= 0); 264166#L26 call #t~ret0 := fact(~n - 1);< 264212#factENTRY ~n := #in~n; 264223#L25 assume !(~n <= 0); 264165#L26 call #t~ret0 := fact(~n - 1);< 264222#factENTRY ~n := #in~n; 264219#L25 assume ~n <= 0;#res := 1; 264208#factFINAL assume true; 264209#factEXIT >#66#return; 264269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264267#factFINAL assume true; 264194#factEXIT >#66#return; 264163#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264157#factFINAL assume true; 264160#factEXIT >#74#return; 264287#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 264289#factENTRY ~n := #in~n; 264292#L25 assume ~n <= 0;#res := 1; 264291#factFINAL assume true; 264290#factEXIT >#76#return; 264242#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 264246#factENTRY ~n := #in~n; 264243#L25 assume !(~n <= 0); 264183#L26 call #t~ret0 := fact(~n - 1);< 264239#factENTRY ~n := #in~n; 264252#L25 assume !(~n <= 0); 264182#L26 call #t~ret0 := fact(~n - 1);< 264249#factENTRY ~n := #in~n; 264268#L25 assume ~n <= 0;#res := 1; 264266#factFINAL assume true; 264247#factEXIT >#66#return; 264244#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264240#factFINAL assume true; 264230#factEXIT >#66#return; 264236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264479#factFINAL assume true; 264477#factEXIT >#78#return; 264034#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 264016#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 264014#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 264012#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 264010#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 264007#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 264008#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 264908#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 264789#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 264790#factENTRY ~n := #in~n; 264884#L25 assume !(~n <= 0); 264815#L26 call #t~ret0 := fact(~n - 1);< 264816#factENTRY ~n := #in~n; 264852#L25 assume ~n <= 0;#res := 1; 264847#factFINAL assume true; 264814#factEXIT >#66#return; 264812#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264810#factFINAL assume true; 264787#factEXIT >#68#return; 264775#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 264779#factENTRY ~n := #in~n; 264807#L25 assume ~n <= 0;#res := 1; 264785#factFINAL assume true; 264773#factEXIT >#70#return; 264767#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 264770#factENTRY ~n := #in~n; 264887#L25 assume !(~n <= 0); 264795#L26 call #t~ret0 := fact(~n - 1);< 264844#factENTRY ~n := #in~n; 264819#L25 assume ~n <= 0;#res := 1; 264818#factFINAL assume true; 264791#factEXIT >#66#return; 264780#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 264771#factFINAL assume true; 264766#factEXIT >#72#return; 264765#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 264764#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 264763#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 264762#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 264761#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 263572#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 263573#factENTRY ~n := #in~n; 264893#L25 assume !(~n <= 0); 264793#L26 call #t~ret0 := fact(~n - 1);< 264800#factENTRY ~n := #in~n; 264819#L25 assume ~n <= 0;#res := 1; 264818#factFINAL assume true; 264791#factEXIT >#66#return; 264799#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265295#factFINAL assume true; 265293#factEXIT >#68#return; 265290#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 265291#factENTRY ~n := #in~n; 265353#L25 assume !(~n <= 0); 265306#L26 call #t~ret0 := fact(~n - 1);< 265312#factENTRY ~n := #in~n; 265355#L25 assume ~n <= 0;#res := 1; 265315#factFINAL assume true; 265305#factEXIT >#66#return; 265304#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265300#factFINAL assume true; 265289#factEXIT >#70#return; 265218#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 265224#factENTRY ~n := #in~n; 265268#L25 assume ~n <= 0;#res := 1; 265252#factFINAL assume true; 265217#factEXIT >#72#return; 265214#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 265213#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 265212#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 265210#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 265189#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 265129#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 265130#factENTRY ~n := #in~n; 265211#L25 assume !(~n <= 0); 265193#L26 call #t~ret0 := fact(~n - 1);< 265209#factENTRY ~n := #in~n; 265280#L25 assume !(~n <= 0); 265195#L26 call #t~ret0 := fact(~n - 1);< 265278#factENTRY ~n := #in~n; 265302#L25 assume ~n <= 0;#res := 1; 265298#factFINAL assume true; 265275#factEXIT >#66#return; 265273#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265254#factFINAL assume true; 265190#factEXIT >#66#return; 265188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265187#factFINAL assume true; 265127#factEXIT >#74#return; 265113#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 265116#factENTRY ~n := #in~n; 266552#L25 assume !(~n <= 0); 265172#L26 call #t~ret0 := fact(~n - 1);< 266233#factENTRY ~n := #in~n; 266601#L25 assume ~n <= 0;#res := 1; 266597#factFINAL assume true; 266584#factEXIT >#66#return; 266594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266583#factFINAL assume true; 266580#factEXIT >#76#return; 266576#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 266578#factENTRY ~n := #in~n; 266600#L25 assume !(~n <= 0); 266587#L26 call #t~ret0 := fact(~n - 1);< 263603#factENTRY ~n := #in~n; 266601#L25 assume ~n <= 0;#res := 1; 266597#factFINAL assume true; 266584#factEXIT >#66#return; 266581#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266579#factFINAL assume true; 266575#factEXIT >#78#return; 266574#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 266573#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 266572#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 266571#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 266570#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 265124#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 265125#factENTRY ~n := #in~n; 265248#L25 assume !(~n <= 0); 265031#L26 call #t~ret0 := fact(~n - 1);< 265162#factENTRY ~n := #in~n; 265274#L25 assume !(~n <= 0); 265025#L26 call #t~ret0 := fact(~n - 1);< 265272#factENTRY ~n := #in~n; 265288#L25 assume ~n <= 0;#res := 1; 265287#factFINAL assume true; 265269#factEXIT >#66#return; 265253#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265186#factFINAL assume true; 265163#factEXIT >#66#return; 265151#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 265149#factFINAL assume true; 265147#factEXIT >#74#return; 265114#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 265120#factENTRY ~n := #in~n; 266390#L25 assume ~n <= 0;#res := 1; 266389#factFINAL assume true; 266387#factEXIT >#76#return; 266376#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 266386#factENTRY ~n := #in~n; 266405#L25 assume !(~n <= 0); 266047#L26 call #t~ret0 := fact(~n - 1);< 266116#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266115#L25 assume ~n <= 0;#res := 1; 266112#factFINAL assume true; 266108#factEXIT >#66#return; 266107#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266103#factFINAL assume true; 266082#factEXIT >#66#return; 266099#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266398#factFINAL assume true; 266394#factEXIT >#78#return; 266236#L30-8 [2022-07-13 03:12:17,368 INFO L754 eck$LassoCheckResult]: Loop: 266236#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 266235#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 266174#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 266143#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 266135#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 266132#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 266134#factENTRY ~n := #in~n; 266133#L25 assume !(~n <= 0); 266030#L26 call #t~ret0 := fact(~n - 1);< 266104#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266115#L25 assume ~n <= 0;#res := 1; 266112#factFINAL assume true; 266108#factEXIT >#66#return; 266107#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266103#factFINAL assume true; 266082#factEXIT >#66#return; 266081#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266079#factFINAL assume true; 266070#factEXIT >#66#return; 266069#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266068#factFINAL assume true; 266066#factEXIT >#66#return; 266049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266062#factFINAL assume true; 266019#factEXIT >#66#return; 266054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266253#factFINAL assume true; 266251#factEXIT >#74#return; 266248#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 266249#factENTRY ~n := #in~n; 266252#L25 assume ~n <= 0;#res := 1; 266250#factFINAL assume true; 266247#factEXIT >#76#return; 266064#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 266246#factENTRY ~n := #in~n; 266245#L25 assume !(~n <= 0); 266037#L26 call #t~ret0 := fact(~n - 1);< 266065#factENTRY ~n := #in~n; 266422#L25 assume !(~n <= 0); 266035#L26 call #t~ret0 := fact(~n - 1);< 266063#factENTRY ~n := #in~n; 266175#L25 assume !(~n <= 0); 266039#L26 call #t~ret0 := fact(~n - 1);< 266078#factENTRY ~n := #in~n; 266131#L25 assume !(~n <= 0); 266032#L26 call #t~ret0 := fact(~n - 1);< 266102#factENTRY ~n := #in~n; 266114#L25 assume !(~n <= 0); 266028#L26 call #t~ret0 := fact(~n - 1);< 266111#factENTRY ~n := #in~n; 266115#L25 assume ~n <= 0;#res := 1; 266112#factFINAL assume true; 266108#factEXIT >#66#return; 266107#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266103#factFINAL assume true; 266082#factEXIT >#66#return; 266081#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266079#factFINAL assume true; 266070#factEXIT >#66#return; 266069#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266068#factFINAL assume true; 266066#factEXIT >#66#return; 266049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266062#factFINAL assume true; 266019#factEXIT >#66#return; 266055#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 266261#factFINAL assume true; 266258#factEXIT >#78#return; 266236#L30-8 [2022-07-13 03:12:17,368 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:17,368 INFO L85 PathProgramCache]: Analyzing trace with hash 1352432565, now seen corresponding path program 25 times [2022-07-13 03:12:17,368 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:17,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1614952612] [2022-07-13 03:12:17,369 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:17,369 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:17,375 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:17,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [937505265] [2022-07-13 03:12:17,375 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-13 03:12:17,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:17,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:17,381 INFO L229 MonitoredProcess]: Starting monitored process 149 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:12:17,382 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (149)] Waiting until timeout for monitored process [2022-07-13 03:12:17,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:17,551 INFO L263 TraceCheckSpWp]: Trace formula consists of 589 conjuncts, 10 conjunts are in the unsatisfiable core [2022-07-13 03:12:17,553 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:17,696 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 1041 proven. 71 refuted. 0 times theorem prover too weak. 2262 trivial. 0 not checked. [2022-07-13 03:12:17,696 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-13 03:12:17,970 INFO L134 CoverageAnalysis]: Checked inductivity of 3374 backedges. 33 proven. 71 refuted. 0 times theorem prover too weak. 3270 trivial. 0 not checked. [2022-07-13 03:12:17,970 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-13 03:12:17,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1614952612] [2022-07-13 03:12:17,970 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-13 03:12:17,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [937505265] [2022-07-13 03:12:17,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [937505265] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-13 03:12:17,970 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-13 03:12:17,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 15 [2022-07-13 03:12:17,970 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [477839434] [2022-07-13 03:12:17,970 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-13 03:12:17,971 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-13 03:12:17,971 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:17,971 INFO L85 PathProgramCache]: Analyzing trace with hash -1446162940, now seen corresponding path program 8 times [2022-07-13 03:12:17,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-13 03:12:17,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [183786209] [2022-07-13 03:12:17,971 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-13 03:12:17,971 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-13 03:12:17,974 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-13 03:12:17,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1191851464] [2022-07-13 03:12:17,975 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-13 03:12:17,975 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-13 03:12:17,975 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:17,978 INFO L229 MonitoredProcess]: Starting monitored process 150 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:12:17,979 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (150)] Waiting until timeout for monitored process [2022-07-13 03:12:18,102 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-13 03:12:18,102 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-13 03:12:18,103 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-13 03:12:18,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-13 03:12:18,127 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-13 03:12:20,838 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:12:20,838 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:12:20,839 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:12:20,839 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:12:20,839 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-13 03:12:20,839 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:20,839 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:12:20,839 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:12:20,839 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration39_Loop [2022-07-13 03:12:20,839 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:12:20,839 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:12:20,840 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:12:20,849 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:12:20,897 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:12:20,899 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:12:20,900 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:12:21,067 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:12:21,068 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-13 03:12:21,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,070 INFO L229 MonitoredProcess]: Starting monitored process 151 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:12:21,071 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (151)] Waiting until timeout for monitored process [2022-07-13 03:12:21,072 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:12:21,072 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:12:21,093 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-13 03:12:21,094 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-13 03:12:21,116 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (151)] Forceful destruction successful, exit code 0 [2022-07-13 03:12:21,117 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,119 INFO L229 MonitoredProcess]: Starting monitored process 152 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:12:21,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (152)] Waiting until timeout for monitored process [2022-07-13 03:12:21,121 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-13 03:12:21,121 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:12:21,166 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (152)] Forceful destruction successful, exit code 0 [2022-07-13 03:12:21,166 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,167 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,168 INFO L229 MonitoredProcess]: Starting monitored process 153 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:12:21,171 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-13 03:12:21,171 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-13 03:12:21,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (153)] Waiting until timeout for monitored process [2022-07-13 03:12:21,195 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-13 03:12:21,217 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (153)] Forceful destruction successful, exit code 0 [2022-07-13 03:12:21,218 INFO L210 LassoAnalysis]: Preferences: [2022-07-13 03:12:21,218 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-13 03:12:21,218 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-13 03:12:21,218 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-13 03:12:21,218 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-13 03:12:21,218 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,218 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-13 03:12:21,218 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-13 03:12:21,218 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration39_Loop [2022-07-13 03:12:21,218 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-13 03:12:21,218 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-13 03:12:21,219 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:12:21,221 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:12:21,273 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:12:21,275 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:12:21,277 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:12:21,439 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-13 03:12:21,439 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-13 03:12:21,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,445 INFO L229 MonitoredProcess]: Starting monitored process 154 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:12:21,446 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (154)] Waiting until timeout for monitored process [2022-07-13 03:12:21,447 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:12:21,453 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:12:21,454 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:12:21,454 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:12:21,454 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:12:21,454 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:12:21,454 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:12:21,454 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:12:21,455 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-13 03:12:21,470 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (154)] Ended with exit code 0 [2022-07-13 03:12:21,471 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,471 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,472 INFO L229 MonitoredProcess]: Starting monitored process 155 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:12:21,473 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (155)] Waiting until timeout for monitored process [2022-07-13 03:12:21,474 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:12:21,479 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-13 03:12:21,479 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-13 03:12:21,479 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-13 03:12:21,480 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-13 03:12:21,480 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-13 03:12:21,482 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-13 03:12:21,482 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-13 03:12:21,484 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-13 03:12:21,487 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-13 03:12:21,487 INFO L444 ModelExtractionUtils]: 8 out of 11 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-13 03:12:21,487 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-13 03:12:21,487 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-13 03:12:21,489 INFO L229 MonitoredProcess]: Starting monitored process 156 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:12:21,490 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (156)] Waiting until timeout for monitored process [2022-07-13 03:12:21,490 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-13 03:12:21,490 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-13 03:12:21,490 INFO L513 LassoAnalysis]: Proved termination. [2022-07-13 03:12:21,491 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 9 Supporting invariants [] [2022-07-13 03:12:21,505 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (155)] Ended with exit code 0 [2022-07-13 03:12:21,506 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-13 03:12:21,515 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:21,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:21,698 INFO L263 TraceCheckSpWp]: Trace formula consists of 1681 conjuncts, 80 conjunts are in the unsatisfiable core [2022-07-13 03:12:21,701 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:22,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:22,678 INFO L263 TraceCheckSpWp]: Trace formula consists of 537 conjuncts, 44 conjunts are in the unsatisfiable core [2022-07-13 03:12:22,679 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:23,195 INFO L134 CoverageAnalysis]: Checked inductivity of 402 backedges. 0 proven. 216 refuted. 0 times theorem prover too weak. 186 trivial. 0 not checked. [2022-07-13 03:12:23,196 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 12 loop predicates [2022-07-13 03:12:23,196 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3439 states and 5062 transitions. cyclomatic complexity: 1677 Second operand has 15 states, 13 states have (on average 3.3846153846153846) internal successors, (44), 13 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (17), 10 states have call predecessors, (17), 6 states have call successors, (17) [2022-07-13 03:12:23,765 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3439 states and 5062 transitions. cyclomatic complexity: 1677. Second operand has 15 states, 13 states have (on average 3.3846153846153846) internal successors, (44), 13 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (17), 10 states have call predecessors, (17), 6 states have call successors, (17) Result 4504 states and 6605 transitions. Complement of second has 67 states. [2022-07-13 03:12:23,766 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 14 states 2 stem states 11 non-accepting loop states 1 accepting loop states [2022-07-13 03:12:23,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 3.3846153846153846) internal successors, (44), 13 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (17), 10 states have call predecessors, (17), 6 states have call successors, (17) [2022-07-13 03:12:23,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 91 transitions. [2022-07-13 03:12:23,767 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 91 transitions. Stem has 253 letters. Loop has 80 letters. [2022-07-13 03:12:23,767 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-13 03:12:23,767 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-13 03:12:23,775 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-13 03:12:23,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:23,961 INFO L263 TraceCheckSpWp]: Trace formula consists of 1681 conjuncts, 80 conjunts are in the unsatisfiable core [2022-07-13 03:12:23,964 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-13 03:12:24,343 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (156)] Forceful destruction successful, exit code 0 [2022-07-13 03:12:25,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-13 03:12:25,339 INFO L263 TraceCheckSpWp]: Trace formula consists of 537 conjuncts, 44 conjunts are in the unsatisfiable core [2022-07-13 03:12:25,341 INFO L286 TraceCheckSpWp]: Computing forward predicates...