./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 b5317dae 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-?-b5317da-m [2023-02-16 04:31:55,475 INFO L177 SettingsManager]: Resetting all preferences to default values... [2023-02-16 04:31:55,477 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2023-02-16 04:31:55,500 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2023-02-16 04:31:55,501 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2023-02-16 04:31:55,502 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2023-02-16 04:31:55,503 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2023-02-16 04:31:55,505 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2023-02-16 04:31:55,506 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2023-02-16 04:31:55,507 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2023-02-16 04:31:55,508 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2023-02-16 04:31:55,509 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2023-02-16 04:31:55,509 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2023-02-16 04:31:55,510 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2023-02-16 04:31:55,511 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2023-02-16 04:31:55,512 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2023-02-16 04:31:55,513 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2023-02-16 04:31:55,513 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2023-02-16 04:31:55,515 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2023-02-16 04:31:55,516 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2023-02-16 04:31:55,517 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2023-02-16 04:31:55,526 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2023-02-16 04:31:55,527 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2023-02-16 04:31:55,531 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2023-02-16 04:31:55,533 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2023-02-16 04:31:55,535 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2023-02-16 04:31:55,536 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2023-02-16 04:31:55,536 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2023-02-16 04:31:55,538 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2023-02-16 04:31:55,538 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2023-02-16 04:31:55,539 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2023-02-16 04:31:55,540 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2023-02-16 04:31:55,541 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2023-02-16 04:31:55,542 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2023-02-16 04:31:55,543 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2023-02-16 04:31:55,544 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2023-02-16 04:31:55,545 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2023-02-16 04:31:55,545 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2023-02-16 04:31:55,545 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2023-02-16 04:31:55,546 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2023-02-16 04:31:55,548 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2023-02-16 04:31:55,549 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2023-02-16 04:31:55,574 INFO L113 SettingsManager]: Loading preferences was successful [2023-02-16 04:31:55,575 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2023-02-16 04:31:55,575 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-02-16 04:31:55,575 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-02-16 04:31:55,577 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-02-16 04:31:55,577 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2023-02-16 04:31:55,578 INFO L138 SettingsManager]: * Use SBE=true [2023-02-16 04:31:55,578 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-02-16 04:31:55,578 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-02-16 04:31:55,578 INFO L138 SettingsManager]: * Use old map elimination=false [2023-02-16 04:31:55,578 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2023-02-16 04:31:55,579 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2023-02-16 04:31:55,579 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-02-16 04:31:55,579 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-02-16 04:31:55,579 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2023-02-16 04:31:55,579 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2023-02-16 04:31:55,580 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-02-16 04:31:55,581 INFO L138 SettingsManager]: * Use constant arrays=true [2023-02-16 04:31:55,581 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-02-16 04:31:55,581 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-02-16 04:31:55,581 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-02-16 04:31:55,582 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-02-16 04:31:55,582 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2023-02-16 04:31:55,583 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-02-16 04:31:55,583 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 [2023-02-16 04:31:55,790 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-02-16 04:31:55,816 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-02-16 04:31:55,819 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-02-16 04:31:55,820 INFO L271 PluginConnector]: Initializing CDTParser... [2023-02-16 04:31:55,821 INFO L275 PluginConnector]: CDTParser initialized [2023-02-16 04:31:55,822 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/Binomial.c [2023-02-16 04:31:56,986 INFO L500 CDTParser]: Created temporary CDT project at NULL [2023-02-16 04:31:57,167 INFO L351 CDTParser]: Found 1 translation units. [2023-02-16 04:31:57,168 INFO L172 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-numeric/Binomial.c [2023-02-16 04:31:57,173 INFO L394 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14a62df49/2910f8126e494537acfe736ec8ff69f9/FLAGd9e271269 [2023-02-16 04:31:57,189 INFO L402 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14a62df49/2910f8126e494537acfe736ec8ff69f9 [2023-02-16 04:31:57,192 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-02-16 04:31:57,194 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2023-02-16 04:31:57,198 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-02-16 04:31:57,198 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-02-16 04:31:57,201 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2023-02-16 04:31:57,202 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,204 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2ba2d2c0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57, skipping insertion in model container [2023-02-16 04:31:57,205 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,211 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2023-02-16 04:31:57,222 INFO L178 MainTranslator]: Built tables and reachable declarations [2023-02-16 04:31:57,345 INFO L210 PostProcessor]: Analyzing one entry point: main [2023-02-16 04:31:57,351 INFO L203 MainTranslator]: Completed pre-run [2023-02-16 04:31:57,361 INFO L210 PostProcessor]: Analyzing one entry point: main [2023-02-16 04:31:57,370 INFO L208 MainTranslator]: Completed translation [2023-02-16 04:31:57,371 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57 WrapperNode [2023-02-16 04:31:57,371 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-02-16 04:31:57,372 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-02-16 04:31:57,372 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-02-16 04:31:57,373 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2023-02-16 04:31:57,378 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,382 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,397 INFO L138 Inliner]: procedures = 6, calls = 8, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 55 [2023-02-16 04:31:57,397 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-02-16 04:31:57,398 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-02-16 04:31:57,398 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2023-02-16 04:31:57,399 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2023-02-16 04:31:57,405 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,405 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,408 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,408 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,416 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,420 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,422 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,423 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,424 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-02-16 04:31:57,425 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-02-16 04:31:57,425 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2023-02-16 04:31:57,425 INFO L275 PluginConnector]: RCFGBuilder initialized [2023-02-16 04:31:57,426 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (1/1) ... [2023-02-16 04:31:57,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:57,443 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:57,454 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) [2023-02-16 04:31:57,456 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 [2023-02-16 04:31:57,481 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2023-02-16 04:31:57,481 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2023-02-16 04:31:57,482 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-02-16 04:31:57,482 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-02-16 04:31:57,535 INFO L235 CfgBuilder]: Building ICFG [2023-02-16 04:31:57,538 INFO L261 CfgBuilder]: Building CFG for each procedure with an implementation [2023-02-16 04:31:57,642 INFO L276 CfgBuilder]: Performing block encoding [2023-02-16 04:31:57,648 INFO L295 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-02-16 04:31:57,648 INFO L300 CfgBuilder]: Removed 2 assume(true) statements. [2023-02-16 04:31:57,650 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 16.02 04:31:57 BoogieIcfgContainer [2023-02-16 04:31:57,650 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-02-16 04:31:57,651 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-02-16 04:31:57,651 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2023-02-16 04:31:57,654 INFO L275 PluginConnector]: BuchiAutomizer initialized [2023-02-16 04:31:57,654 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-02-16 04:31:57,655 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 16.02 04:31:57" (1/3) ... [2023-02-16 04:31:57,655 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@72a78e2e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 16.02 04:31:57, skipping insertion in model container [2023-02-16 04:31:57,656 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-02-16 04:31:57,656 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 16.02 04:31:57" (2/3) ... [2023-02-16 04:31:57,656 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@72a78e2e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 16.02 04:31:57, skipping insertion in model container [2023-02-16 04:31:57,656 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-02-16 04:31:57,656 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 16.02 04:31:57" (3/3) ... [2023-02-16 04:31:57,657 INFO L332 chiAutomizerObserver]: Analyzing ICFG Binomial.c [2023-02-16 04:31:57,725 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2023-02-16 04:31:57,725 INFO L304 stractBuchiCegarLoop]: Hoare is false [2023-02-16 04:31:57,726 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-02-16 04:31:57,726 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-02-16 04:31:57,726 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-02-16 04:31:57,726 INFO L308 stractBuchiCegarLoop]: Difference is false [2023-02-16 04:31:57,726 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-02-16 04:31:57,726 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2023-02-16 04:31:57,734 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) [2023-02-16 04:31:57,751 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2023-02-16 04:31:57,751 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:31:57,751 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:31:57,754 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:31:57,754 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2023-02-16 04:31:57,754 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-02-16 04:31:57,755 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) [2023-02-16 04:31:57,757 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2023-02-16 04:31:57,757 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:31:57,757 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:31:57,758 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:31:57,758 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2023-02-16 04:31:57,764 INFO L748 eck$LassoCheckResult]: Stem: 26#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true; 8#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; 14#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; 11#L41-3true [2023-02-16 04:31:57,765 INFO L750 eck$LassoCheckResult]: Loop: 11#L41-3true assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 20#L42-3true assume !(main_~k~0#1 <= main_~x~0#1); 12#L41-2true main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 11#L41-3true [2023-02-16 04:31:57,769 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:57,770 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 1 times [2023-02-16 04:31:57,777 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:57,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [364169717] [2023-02-16 04:31:57,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:57,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:57,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:57,839 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:31:57,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:57,856 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:31:57,859 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:57,859 INFO L85 PathProgramCache]: Analyzing trace with hash 57812, now seen corresponding path program 1 times [2023-02-16 04:31:57,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:57,860 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2051761310] [2023-02-16 04:31:57,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:57,860 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:57,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:57,869 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:31:57,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:57,874 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:31:57,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:57,876 INFO L85 PathProgramCache]: Analyzing trace with hash 553673357, now seen corresponding path program 1 times [2023-02-16 04:31:57,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:57,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1826481621] [2023-02-16 04:31:57,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:57,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:57,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:57,966 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:31:57,967 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:31:57,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1826481621] [2023-02-16 04:31:57,967 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1826481621] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:31:57,968 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:31:57,968 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-02-16 04:31:57,968 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [309166502] [2023-02-16 04:31:57,969 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:31:58,029 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:31:58,030 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:31:58,031 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:31:58,031 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:31:58,031 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:31:58,031 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,031 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:31:58,032 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:31:58,032 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2023-02-16 04:31:58,032 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:31:58,032 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:31:58,048 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:58,056 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:58,122 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:31:58,123 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:31:58,125 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,125 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,137 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) [2023-02-16 04:31:58,139 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:31:58,140 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:31:58,150 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 [2023-02-16 04:31:58,154 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:31:58,155 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: [] [2023-02-16 04:31:58,163 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 [2023-02-16 04:31:58,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,164 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) [2023-02-16 04:31:58,168 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 [2023-02-16 04:31:58,169 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:31:58,173 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:31:58,189 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2023-02-16 04:31:58,190 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,190 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,191 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) [2023-02-16 04:31:58,195 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 [2023-02-16 04:31:58,196 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:31:58,196 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:31:58,347 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:31:58,351 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 [2023-02-16 04:31:58,351 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:31:58,351 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:31:58,351 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:31:58,351 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:31:58,351 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:31:58,351 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,351 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:31:58,352 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:31:58,352 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2023-02-16 04:31:58,352 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:31:58,352 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:31:58,353 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:58,364 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:58,409 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:31:58,413 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:31:58,414 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,414 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,417 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) [2023-02-16 04:31:58,426 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 [2023-02-16 04:31:58,443 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:31:58,444 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:31:58,444 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:31:58,444 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:31:58,444 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:31:58,446 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:31:58,446 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:31:58,453 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 [2023-02-16 04:31:58,457 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:31:58,467 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 [2023-02-16 04:31:58,467 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,468 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,469 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) [2023-02-16 04:31:58,480 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 [2023-02-16 04:31:58,487 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:31:58,487 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:31:58,488 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:31:58,488 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:31:58,488 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:31:58,494 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:31:58,494 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:31:58,500 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 [2023-02-16 04:31:58,510 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:31:58,515 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2023-02-16 04:31:58,515 INFO L444 ModelExtractionUtils]: 1 out of 5 variables were initially zero. Simplification set additionally 2 variables to zero. [2023-02-16 04:31:58,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:58,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,553 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) [2023-02-16 04:31:58,555 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 [2023-02-16 04:31:58,556 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:31:58,556 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:31:58,556 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:31:58,557 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 [] [2023-02-16 04:31:58,564 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 [2023-02-16 04:31:58,566 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:31:58,596 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:58,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:58,608 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2023-02-16 04:31:58,610 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:31:58,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:58,626 WARN L261 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:31:58,627 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:31:58,688 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:31:58,715 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2023-02-16 04:31:58,717 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) [2023-02-16 04:31:58,786 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. [2023-02-16 04:31:58,788 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 [2023-02-16 04:31:58,792 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) [2023-02-16 04:31:58,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2023-02-16 04:31:58,795 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 3 letters. [2023-02-16 04:31:58,796 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:31:58,796 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 7 letters. Loop has 3 letters. [2023-02-16 04:31:58,796 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:31:58,796 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 6 letters. [2023-02-16 04:31:58,796 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:31:58,797 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 73 states and 106 transitions. [2023-02-16 04:31:58,802 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2023-02-16 04:31:58,807 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 73 states to 33 states and 48 transitions. [2023-02-16 04:31:58,808 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2023-02-16 04:31:58,809 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 30 [2023-02-16 04:31:58,809 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33 states and 48 transitions. [2023-02-16 04:31:58,810 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:31:58,810 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33 states and 48 transitions. [2023-02-16 04:31:58,823 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states and 48 transitions. [2023-02-16 04:31:58,832 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 30. [2023-02-16 04:31:58,833 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) [2023-02-16 04:31:58,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 42 transitions. [2023-02-16 04:31:58,835 INFO L240 hiAutomatonCegarLoop]: Abstraction has 30 states and 42 transitions. [2023-02-16 04:31:58,835 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:31:58,837 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-02-16 04:31:58,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-02-16 04:31:58,838 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) [2023-02-16 04:31:58,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:31:58,897 INFO L93 Difference]: Finished difference Result 29 states and 38 transitions. [2023-02-16 04:31:58,897 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 38 transitions. [2023-02-16 04:31:58,899 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2023-02-16 04:31:58,900 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 28 states and 37 transitions. [2023-02-16 04:31:58,900 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2023-02-16 04:31:58,900 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2023-02-16 04:31:58,901 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 37 transitions. [2023-02-16 04:31:58,901 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-02-16 04:31:58,901 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 37 transitions. [2023-02-16 04:31:58,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 37 transitions. [2023-02-16 04:31:58,903 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 26. [2023-02-16 04:31:58,903 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) [2023-02-16 04:31:58,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 35 transitions. [2023-02-16 04:31:58,904 INFO L240 hiAutomatonCegarLoop]: Abstraction has 26 states and 35 transitions. [2023-02-16 04:31:58,905 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-02-16 04:31:58,907 INFO L428 stractBuchiCegarLoop]: Abstraction has 26 states and 35 transitions. [2023-02-16 04:31:58,907 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-02-16 04:31:58,908 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 26 states and 35 transitions. [2023-02-16 04:31:58,909 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2023-02-16 04:31:58,909 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:31:58,909 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:31:58,910 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:31:58,910 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:31:58,910 INFO L748 eck$LassoCheckResult]: Stem: 243#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 231#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; 232#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 238#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; 234#L41-3 [2023-02-16 04:31:58,911 INFO L750 eck$LassoCheckResult]: Loop: 234#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 235#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 240#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; 218#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 219#$Ultimate##0 ~n := #in~n; 241#L25 assume ~n <= 0;#res := 1; 230#factFINAL assume true; 220#factEXIT >#74#return; 225#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 219#$Ultimate##0 ~n := #in~n; 241#L25 assume ~n <= 0;#res := 1; 230#factFINAL assume true; 220#factEXIT >#76#return; 221#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 219#$Ultimate##0 ~n := #in~n; 241#L25 assume ~n <= 0;#res := 1; 230#factFINAL assume true; 220#factEXIT >#78#return; 227#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; 233#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 239#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 242#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 237#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 234#L41-3 [2023-02-16 04:31:58,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:58,911 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 2 times [2023-02-16 04:31:58,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:58,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [526164648] [2023-02-16 04:31:58,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:58,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:58,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:58,917 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:31:58,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:58,920 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:31:58,921 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:58,921 INFO L85 PathProgramCache]: Analyzing trace with hash 1284911041, now seen corresponding path program 1 times [2023-02-16 04:31:58,921 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:58,922 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [405152129] [2023-02-16 04:31:58,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:58,922 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:58,936 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:31:58,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1926900535] [2023-02-16 04:31:58,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:58,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:31:58,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:58,938 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) [2023-02-16 04:31:58,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2023-02-16 04:31:58,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:58,992 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 8 conjunts are in the unsatisfiable core [2023-02-16 04:31:58,994 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:31:59,037 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2023-02-16 04:31:59,038 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-02-16 04:31:59,038 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:31:59,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [405152129] [2023-02-16 04:31:59,039 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:31:59,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1926900535] [2023-02-16 04:31:59,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1926900535] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:31:59,039 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:31:59,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-02-16 04:31:59,040 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [538572565] [2023-02-16 04:31:59,040 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:31:59,040 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:31:59,040 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:31:59,041 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-02-16 04:31:59,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-02-16 04:31:59,041 INFO L87 Difference]: Start difference. First operand 26 states and 35 transitions. cyclomatic complexity: 11 Second operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2023-02-16 04:31:59,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:31:59,098 INFO L93 Difference]: Finished difference Result 34 states and 50 transitions. [2023-02-16 04:31:59,098 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 34 states and 50 transitions. [2023-02-16 04:31:59,100 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 25 [2023-02-16 04:31:59,101 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 34 states to 34 states and 50 transitions. [2023-02-16 04:31:59,101 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 34 [2023-02-16 04:31:59,102 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 34 [2023-02-16 04:31:59,102 INFO L73 IsDeterministic]: Start isDeterministic. Operand 34 states and 50 transitions. [2023-02-16 04:31:59,102 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-02-16 04:31:59,103 INFO L218 hiAutomatonCegarLoop]: Abstraction has 34 states and 50 transitions. [2023-02-16 04:31:59,103 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states and 50 transitions. [2023-02-16 04:31:59,106 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 28. [2023-02-16 04:31:59,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 19 states have internal predecessors, (22), 7 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2023-02-16 04:31:59,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 42 transitions. [2023-02-16 04:31:59,107 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 42 transitions. [2023-02-16 04:31:59,107 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-02-16 04:31:59,108 INFO L428 stractBuchiCegarLoop]: Abstraction has 28 states and 42 transitions. [2023-02-16 04:31:59,108 INFO L335 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2023-02-16 04:31:59,108 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 42 transitions. [2023-02-16 04:31:59,109 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2023-02-16 04:31:59,109 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:31:59,109 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:31:59,110 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:31:59,110 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:31:59,111 INFO L748 eck$LassoCheckResult]: Stem: 380#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 366#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; 367#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 374#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; 370#L41-3 [2023-02-16 04:31:59,111 INFO L750 eck$LassoCheckResult]: Loop: 370#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 371#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 376#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; 354#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 355#$Ultimate##0 ~n := #in~n; 378#L25 assume ~n <= 0;#res := 1; 365#factFINAL assume true; 356#factEXIT >#74#return; 362#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 355#$Ultimate##0 ~n := #in~n; 378#L25 assume ~n <= 0;#res := 1; 365#factFINAL assume true; 356#factEXIT >#76#return; 358#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 355#$Ultimate##0 ~n := #in~n; 378#L25 assume !(~n <= 0); 360#L26 call #t~ret0 := fact(~n - 1);< 355#$Ultimate##0 ~n := #in~n; 378#L25 assume ~n <= 0;#res := 1; 365#factFINAL assume true; 356#factEXIT >#66#return; 364#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 377#factFINAL assume true; 381#factEXIT >#78#return; 368#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; 369#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 375#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 379#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 373#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 370#L41-3 [2023-02-16 04:31:59,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:59,112 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 3 times [2023-02-16 04:31:59,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:59,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [268136819] [2023-02-16 04:31:59,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:59,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:59,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:59,116 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:31:59,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:59,119 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:31:59,120 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:59,120 INFO L85 PathProgramCache]: Analyzing trace with hash -1183838151, now seen corresponding path program 1 times [2023-02-16 04:31:59,120 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:59,120 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [499674606] [2023-02-16 04:31:59,120 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:59,120 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:59,131 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:31:59,131 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1875842422] [2023-02-16 04:31:59,131 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:59,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:31:59,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:59,145 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) [2023-02-16 04:31:59,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2023-02-16 04:31:59,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:59,189 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:31:59,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:31:59,213 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:31:59,214 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:31:59,214 INFO L85 PathProgramCache]: Analyzing trace with hash 2107943858, now seen corresponding path program 1 times [2023-02-16 04:31:59,214 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:31:59,214 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [275179476] [2023-02-16 04:31:59,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:59,215 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:31:59,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:59,241 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:31:59,248 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [275179476] [2023-02-16 04:31:59,249 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2023-02-16 04:31:59,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1020801211] [2023-02-16 04:31:59,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:31:59,249 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:31:59,250 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:59,252 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:31:59,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2023-02-16 04:31:59,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:31:59,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 81 conjuncts, 3 conjunts are in the unsatisfiable core [2023-02-16 04:31:59,301 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:31:59,371 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2023-02-16 04:31:59,371 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-02-16 04:31:59,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1020801211] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:31:59,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:31:59,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-02-16 04:31:59,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [326497181] [2023-02-16 04:31:59,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:31:59,385 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 [2023-02-16 04:31:59,747 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:31:59,747 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:31:59,747 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:31:59,747 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:31:59,747 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:31:59,747 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:59,747 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:31:59,748 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:31:59,748 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration3_Loop [2023-02-16 04:31:59,748 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:31:59,748 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:31:59,749 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,752 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,775 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,778 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,780 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,785 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,788 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,790 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:31:59,973 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:31:59,973 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:31:59,973 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:31:59,974 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:31:59,977 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) [2023-02-16 04:31:59,985 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 [2023-02-16 04:31:59,987 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:31:59,987 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:31:59,995 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:31:59,995 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: [] [2023-02-16 04:32:00,004 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Ended with exit code 0 [2023-02-16 04:32:00,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,004 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,007 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) [2023-02-16 04:32:00,008 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 [2023-02-16 04:32:00,017 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:00,017 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:00,046 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 [2023-02-16 04:32:00,047 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,048 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) [2023-02-16 04:32:00,060 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:00,060 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:00,075 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 [2023-02-16 04:32:00,101 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:00,109 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 [2023-02-16 04:32:00,109 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:00,109 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:00,109 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:00,109 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:00,109 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:00,109 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,109 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:00,109 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:00,109 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration3_Loop [2023-02-16 04:32:00,110 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:00,110 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:00,111 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,113 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,133 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,135 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,138 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,140 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,142 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,144 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:00,322 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:00,322 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:00,322 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,329 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) [2023-02-16 04:32:00,332 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 [2023-02-16 04:32:00,334 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 [2023-02-16 04:32:00,340 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,341 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,341 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,341 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,341 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,342 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,342 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,356 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,361 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 [2023-02-16 04:32:00,361 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,361 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,362 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) [2023-02-16 04:32:00,371 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 [2023-02-16 04:32:00,379 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,379 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,379 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,379 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,379 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,382 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,382 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,386 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 [2023-02-16 04:32:00,397 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,401 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 [2023-02-16 04:32:00,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,402 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) [2023-02-16 04:32:00,404 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 [2023-02-16 04:32:00,406 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 [2023-02-16 04:32:00,413 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,413 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,413 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,414 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,414 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,414 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,414 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,429 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,436 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 [2023-02-16 04:32:00,437 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,437 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,438 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) [2023-02-16 04:32:00,441 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 [2023-02-16 04:32:00,442 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 [2023-02-16 04:32:00,449 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,449 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,450 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,450 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,450 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,450 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,451 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,464 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,470 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 [2023-02-16 04:32:00,471 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,471 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,473 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) [2023-02-16 04:32:00,485 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 [2023-02-16 04:32:00,486 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 [2023-02-16 04:32:00,493 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,493 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,493 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,493 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,493 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,494 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,494 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,503 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,506 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 [2023-02-16 04:32:00,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,508 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) [2023-02-16 04:32:00,513 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 [2023-02-16 04:32:00,520 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 [2023-02-16 04:32:00,521 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,521 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,521 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,521 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,521 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,521 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,521 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,522 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,525 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,525 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,526 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,527 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) [2023-02-16 04:32:00,528 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 [2023-02-16 04:32:00,530 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 [2023-02-16 04:32:00,535 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,535 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,535 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,536 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,536 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,536 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,536 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,540 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,543 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 [2023-02-16 04:32:00,544 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,545 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) [2023-02-16 04:32:00,547 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 [2023-02-16 04:32:00,548 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 [2023-02-16 04:32:00,554 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,555 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,555 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,555 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,555 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:00,555 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:00,556 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,560 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,565 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 [2023-02-16 04:32:00,566 INFO L490 LassoAnalysis]: Using template '2-nested'. [2023-02-16 04:32:00,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,567 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) [2023-02-16 04:32:00,568 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 [2023-02-16 04:32:00,570 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 [2023-02-16 04:32:00,575 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,576 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,576 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,576 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,576 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,576 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,576 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,590 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,593 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 [2023-02-16 04:32:00,593 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,593 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,594 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) [2023-02-16 04:32:00,595 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 [2023-02-16 04:32:00,597 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 [2023-02-16 04:32:00,603 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,604 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,604 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,604 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,604 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,608 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,608 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,644 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,650 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 [2023-02-16 04:32:00,651 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,652 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) [2023-02-16 04:32:00,657 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 [2023-02-16 04:32:00,664 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,664 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,664 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,664 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,665 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,665 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,665 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,668 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 [2023-02-16 04:32:00,675 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,683 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,683 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,683 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,685 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) [2023-02-16 04:32:00,690 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 [2023-02-16 04:32:00,697 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,697 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,698 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,698 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,698 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,698 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,698 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,700 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 [2023-02-16 04:32:00,708 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,716 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,718 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) [2023-02-16 04:32:00,725 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 [2023-02-16 04:32:00,732 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,732 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,733 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,733 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,733 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,733 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,733 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,736 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 [2023-02-16 04:32:00,744 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,751 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 [2023-02-16 04:32:00,751 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,751 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,752 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) [2023-02-16 04:32:00,754 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 [2023-02-16 04:32:00,756 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 [2023-02-16 04:32:00,763 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,763 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,763 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,763 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,763 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,764 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,764 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,788 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,795 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,796 INFO L229 MonitoredProcess]: Starting monitored process 28 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) [2023-02-16 04:32:00,798 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2023-02-16 04:32:00,800 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 [2023-02-16 04:32:00,807 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,807 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,807 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,807 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,807 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,808 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,808 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,826 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,832 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,833 INFO L229 MonitoredProcess]: Starting monitored process 29 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) [2023-02-16 04:32:00,836 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2023-02-16 04:32:00,837 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 [2023-02-16 04:32:00,845 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,845 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,846 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,846 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,846 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:00,847 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:00,847 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,860 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,869 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,869 INFO L490 LassoAnalysis]: Using template '3-nested'. [2023-02-16 04:32:00,869 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,869 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,870 INFO L229 MonitoredProcess]: Starting monitored process 30 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) [2023-02-16 04:32:00,873 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2023-02-16 04:32:00,874 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 [2023-02-16 04:32:00,882 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,882 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,882 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,882 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,882 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:00,883 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:00,883 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,900 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,906 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,908 INFO L229 MonitoredProcess]: Starting monitored process 31 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) [2023-02-16 04:32:00,917 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 [2023-02-16 04:32:00,928 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,928 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,928 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,928 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,928 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:00,935 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:00,935 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2023-02-16 04:32:00,949 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,955 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,956 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,957 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) [2023-02-16 04:32:00,960 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 [2023-02-16 04:32:00,961 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 [2023-02-16 04:32:00,969 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,969 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,970 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,970 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,970 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:00,971 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:00,971 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,976 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,979 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:00,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,981 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) [2023-02-16 04:32:00,982 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 [2023-02-16 04:32:00,983 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 [2023-02-16 04:32:00,990 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:00,990 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:00,990 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:00,990 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:00,990 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:00,991 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:00,991 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:00,992 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:00,995 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 [2023-02-16 04:32:00,997 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:00,997 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:00,998 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) [2023-02-16 04:32:00,999 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 [2023-02-16 04:32:01,000 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 [2023-02-16 04:32:01,007 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,007 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,007 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,007 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,007 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,008 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,008 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,009 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,012 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Ended with exit code 0 [2023-02-16 04:32:01,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,013 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) [2023-02-16 04:32:01,014 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 [2023-02-16 04:32:01,016 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 [2023-02-16 04:32:01,023 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,023 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,023 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,023 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,023 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,024 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,024 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,027 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,032 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,034 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) [2023-02-16 04:32:01,035 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 [2023-02-16 04:32:01,037 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 [2023-02-16 04:32:01,044 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,044 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,044 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,044 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,044 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,045 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,045 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,049 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,051 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 [2023-02-16 04:32:01,052 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,052 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,053 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) [2023-02-16 04:32:01,053 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 [2023-02-16 04:32:01,057 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 [2023-02-16 04:32:01,063 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,064 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,064 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,064 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,064 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,069 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,069 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,078 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,081 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Ended with exit code 0 [2023-02-16 04:32:01,081 INFO L490 LassoAnalysis]: Using template '4-nested'. [2023-02-16 04:32:01,082 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,082 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) [2023-02-16 04:32:01,084 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 [2023-02-16 04:32:01,085 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 [2023-02-16 04:32:01,092 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,092 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,093 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,093 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,093 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,093 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,093 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,095 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,098 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Ended with exit code 0 [2023-02-16 04:32:01,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,099 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) [2023-02-16 04:32:01,100 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 [2023-02-16 04:32:01,136 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 [2023-02-16 04:32:01,144 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,144 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,144 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,144 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,144 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,149 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,149 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,162 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,166 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Ended with exit code 0 [2023-02-16 04:32:01,166 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,166 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,167 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) [2023-02-16 04:32:01,172 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 [2023-02-16 04:32:01,173 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2023-02-16 04:32:01,179 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,180 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,180 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,180 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,180 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,181 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,181 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,196 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,204 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 [2023-02-16 04:32:01,205 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,206 INFO L229 MonitoredProcess]: Starting monitored process 41 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) [2023-02-16 04:32:01,208 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2023-02-16 04:32:01,210 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 [2023-02-16 04:32:01,218 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,218 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,218 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,218 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,218 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,219 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,219 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,241 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,244 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,245 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,245 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,246 INFO L229 MonitoredProcess]: Starting monitored process 42 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) [2023-02-16 04:32:01,248 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2023-02-16 04:32:01,250 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 [2023-02-16 04:32:01,258 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,258 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,258 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,258 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,258 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,259 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,259 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,275 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,282 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,282 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,282 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,284 INFO L229 MonitoredProcess]: Starting monitored process 43 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) [2023-02-16 04:32:01,289 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 [2023-02-16 04:32:01,297 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2023-02-16 04:32:01,297 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,297 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,297 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,297 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,297 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,298 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,298 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,312 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,319 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,319 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,320 INFO L229 MonitoredProcess]: Starting monitored process 44 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) [2023-02-16 04:32:01,325 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 [2023-02-16 04:32:01,333 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,333 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,333 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,333 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,333 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,334 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,334 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,336 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2023-02-16 04:32:01,349 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,355 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,356 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,356 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,357 INFO L229 MonitoredProcess]: Starting monitored process 45 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) [2023-02-16 04:32:01,361 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 [2023-02-16 04:32:01,369 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:01,369 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,369 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,369 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,370 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,371 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,371 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2023-02-16 04:32:01,393 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,397 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,397 INFO L490 LassoAnalysis]: Using template '2-phase'. [2023-02-16 04:32:01,397 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,399 INFO L229 MonitoredProcess]: Starting monitored process 46 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) [2023-02-16 04:32:01,405 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 [2023-02-16 04:32:01,408 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2023-02-16 04:32:01,411 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,412 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,412 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,412 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,412 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,412 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,413 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,413 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,428 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,431 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,433 INFO L229 MonitoredProcess]: Starting monitored process 47 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) [2023-02-16 04:32:01,437 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 [2023-02-16 04:32:01,445 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,445 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,445 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,446 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,446 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,446 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,449 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,449 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,458 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2023-02-16 04:32:01,464 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,468 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,468 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,470 INFO L229 MonitoredProcess]: Starting monitored process 48 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) [2023-02-16 04:32:01,477 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 [2023-02-16 04:32:01,485 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,485 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,485 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,485 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,485 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,485 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,486 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,486 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,488 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2023-02-16 04:32:01,492 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,494 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,495 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,495 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,495 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) [2023-02-16 04:32:01,496 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 [2023-02-16 04:32:01,500 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 [2023-02-16 04:32:01,507 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,507 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,507 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,507 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,507 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,507 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,508 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,508 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,513 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,516 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 [2023-02-16 04:32:01,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,517 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) [2023-02-16 04:32:01,518 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 [2023-02-16 04:32:01,520 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 [2023-02-16 04:32:01,527 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,527 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,528 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,528 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,528 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,528 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,529 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,529 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,538 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,542 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 [2023-02-16 04:32:01,542 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,542 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,543 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) [2023-02-16 04:32:01,543 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 [2023-02-16 04:32:01,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 [2023-02-16 04:32:01,552 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,552 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,553 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,553 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,553 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,553 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,553 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,553 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,558 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,561 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,561 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,562 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) [2023-02-16 04:32:01,563 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 [2023-02-16 04:32:01,565 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 [2023-02-16 04:32:01,571 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,571 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,571 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,571 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,571 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,571 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,572 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,572 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,601 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,604 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,605 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) [2023-02-16 04:32:01,609 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 [2023-02-16 04:32:01,610 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 [2023-02-16 04:32:01,616 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,616 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:01,616 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,616 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,616 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,616 INFO L205 nArgumentSynthesizer]: 3 template conjuncts. [2023-02-16 04:32:01,617 INFO L401 nArgumentSynthesizer]: We have 3 Motzkin's Theorem applications. [2023-02-16 04:32:01,617 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,620 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,622 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:01,623 INFO L490 LassoAnalysis]: Using template '3-phase'. [2023-02-16 04:32:01,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,624 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) [2023-02-16 04:32:01,626 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 [2023-02-16 04:32:01,627 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 [2023-02-16 04:32:01,633 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,634 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,634 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,634 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,634 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,634 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,635 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,635 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,646 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,650 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 [2023-02-16 04:32:01,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,654 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) [2023-02-16 04:32:01,657 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 [2023-02-16 04:32:01,657 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 [2023-02-16 04:32:01,666 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,667 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,667 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,667 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,667 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,667 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,672 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,693 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,697 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 [2023-02-16 04:32:01,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,698 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) [2023-02-16 04:32:01,705 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 [2023-02-16 04:32:01,714 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,714 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,714 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,714 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,714 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,714 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,715 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,715 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,727 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,731 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 [2023-02-16 04:32:01,732 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,732 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,733 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) [2023-02-16 04:32:01,734 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 [2023-02-16 04:32:01,737 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 [2023-02-16 04:32:01,745 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,745 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,746 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,746 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,746 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,746 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,747 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,747 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,750 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 [2023-02-16 04:32:01,765 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,769 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 [2023-02-16 04:32:01,769 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,769 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,770 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) [2023-02-16 04:32:01,773 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 [2023-02-16 04:32:01,774 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 [2023-02-16 04:32:01,782 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,782 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,782 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,782 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,782 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,782 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,783 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,783 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,791 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,794 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 [2023-02-16 04:32:01,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,795 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) [2023-02-16 04:32:01,796 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 [2023-02-16 04:32:01,798 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 [2023-02-16 04:32:01,805 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,805 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,805 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,806 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,806 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,806 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,807 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,807 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,811 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,814 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 [2023-02-16 04:32:01,814 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,815 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) [2023-02-16 04:32:01,816 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 [2023-02-16 04:32:01,818 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 [2023-02-16 04:32:01,824 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,824 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,824 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,825 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,825 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,825 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,825 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,825 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,828 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,830 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Ended with exit code 0 [2023-02-16 04:32:01,831 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,832 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) [2023-02-16 04:32:01,833 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 [2023-02-16 04:32:01,834 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 [2023-02-16 04:32:01,841 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,842 INFO L338 nArgumentSynthesizer]: Template has degree 2. [2023-02-16 04:32:01,842 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,842 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,842 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,842 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:01,843 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:01,843 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,847 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,850 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Ended with exit code 0 [2023-02-16 04:32:01,850 INFO L490 LassoAnalysis]: Using template '4-phase'. [2023-02-16 04:32:01,850 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,850 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,851 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) [2023-02-16 04:32:01,852 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 [2023-02-16 04:32:01,854 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 [2023-02-16 04:32:01,861 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,861 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:01,861 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,861 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,861 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,861 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,862 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,862 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,897 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,901 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 [2023-02-16 04:32:01,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,905 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) [2023-02-16 04:32:01,913 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 [2023-02-16 04:32:01,922 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:01,923 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:01,923 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:01,923 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:01,923 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:01,923 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:01,931 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:01,931 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:01,942 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 [2023-02-16 04:32:01,968 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:01,973 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 [2023-02-16 04:32:01,973 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:01,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:01,974 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) [2023-02-16 04:32:01,976 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 [2023-02-16 04:32:02,003 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 [2023-02-16 04:32:02,011 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,011 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,011 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,011 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,012 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,012 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,013 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,013 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,028 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,031 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 [2023-02-16 04:32:02,032 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,032 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,033 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) [2023-02-16 04:32:02,035 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 [2023-02-16 04:32:02,037 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 [2023-02-16 04:32:02,045 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,045 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,045 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,046 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,046 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,046 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,047 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,047 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,052 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,055 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Ended with exit code 0 [2023-02-16 04:32:02,055 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,055 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,056 INFO L229 MonitoredProcess]: Starting monitored process 66 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) [2023-02-16 04:32:02,059 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2023-02-16 04:32:02,060 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 [2023-02-16 04:32:02,067 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,067 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,067 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,067 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,067 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,067 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,068 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,068 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,073 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,077 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,077 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,077 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,079 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) [2023-02-16 04:32:02,080 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 [2023-02-16 04:32:02,082 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 [2023-02-16 04:32:02,089 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,089 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,089 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,089 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,089 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,089 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,093 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,093 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,116 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,128 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 [2023-02-16 04:32:02,128 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,128 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,129 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) [2023-02-16 04:32:02,133 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 [2023-02-16 04:32:02,142 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,142 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,142 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,142 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,142 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,142 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,143 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,143 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,147 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 [2023-02-16 04:32:02,160 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,164 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 [2023-02-16 04:32:02,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,166 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) [2023-02-16 04:32:02,173 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2023-02-16 04:32:02,182 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,182 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,182 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,182 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,182 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,182 INFO L205 nArgumentSynthesizer]: 5 template conjuncts. [2023-02-16 04:32:02,184 INFO L401 nArgumentSynthesizer]: We have 5 Motzkin's Theorem applications. [2023-02-16 04:32:02,184 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,192 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 [2023-02-16 04:32:02,201 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,204 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 [2023-02-16 04:32:02,205 INFO L490 LassoAnalysis]: Using template '2-lex'. [2023-02-16 04:32:02,205 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,206 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) [2023-02-16 04:32:02,208 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 [2023-02-16 04:32:02,209 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 [2023-02-16 04:32:02,217 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,217 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,217 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,217 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,217 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,218 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,218 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,218 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,232 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,235 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 [2023-02-16 04:32:02,235 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,236 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) [2023-02-16 04:32:02,237 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 [2023-02-16 04:32:02,240 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 [2023-02-16 04:32:02,246 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,247 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,247 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,247 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,247 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,247 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,251 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,251 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,261 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,263 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 [2023-02-16 04:32:02,264 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,264 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,265 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) [2023-02-16 04:32:02,266 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 [2023-02-16 04:32:02,268 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 [2023-02-16 04:32:02,274 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,274 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,274 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,274 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,274 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,275 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,275 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,275 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,277 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,280 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 [2023-02-16 04:32:02,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,282 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) [2023-02-16 04:32:02,286 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 [2023-02-16 04:32:02,287 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 [2023-02-16 04:32:02,293 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,293 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,293 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,294 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,294 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,294 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,295 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,295 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,297 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,300 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,300 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,300 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,301 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) [2023-02-16 04:32:02,303 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 [2023-02-16 04:32:02,304 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 [2023-02-16 04:32:02,310 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,311 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,311 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,311 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,311 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,311 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,311 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,311 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,313 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,316 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,316 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,316 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,317 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) [2023-02-16 04:32:02,318 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 [2023-02-16 04:32:02,320 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 [2023-02-16 04:32:02,326 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,327 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,327 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,327 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,327 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,327 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,329 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,329 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,333 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,335 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Ended with exit code 0 [2023-02-16 04:32:02,336 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,337 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) [2023-02-16 04:32:02,339 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 [2023-02-16 04:32:02,340 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 [2023-02-16 04:32:02,346 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,346 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,346 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,347 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,347 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,347 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,347 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,347 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,349 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,352 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 [2023-02-16 04:32:02,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,353 INFO L229 MonitoredProcess]: Starting monitored process 77 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) [2023-02-16 04:32:02,354 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2023-02-16 04:32:02,356 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 [2023-02-16 04:32:02,362 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,362 INFO L338 nArgumentSynthesizer]: Template has degree 1. [2023-02-16 04:32:02,362 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,362 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,362 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,362 INFO L205 nArgumentSynthesizer]: 4 template conjuncts. [2023-02-16 04:32:02,363 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2023-02-16 04:32:02,364 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,366 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,369 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Ended with exit code 0 [2023-02-16 04:32:02,369 INFO L490 LassoAnalysis]: Using template '3-lex'. [2023-02-16 04:32:02,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,370 INFO L229 MonitoredProcess]: Starting monitored process 78 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) [2023-02-16 04:32:02,370 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2023-02-16 04:32:02,373 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 [2023-02-16 04:32:02,380 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,380 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,380 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,380 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,380 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,380 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,381 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,381 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,384 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,387 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,388 INFO L229 MonitoredProcess]: Starting monitored process 79 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) [2023-02-16 04:32:02,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2023-02-16 04:32:02,390 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 [2023-02-16 04:32:02,397 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,397 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,398 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,398 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,398 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,398 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,404 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,404 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,420 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,423 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Ended with exit code 0 [2023-02-16 04:32:02,423 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,424 INFO L229 MonitoredProcess]: Starting monitored process 80 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) [2023-02-16 04:32:02,425 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2023-02-16 04:32:02,427 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 [2023-02-16 04:32:02,433 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,434 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,434 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,434 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,434 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,434 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,435 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,435 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,461 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,466 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Ended with exit code 0 [2023-02-16 04:32:02,466 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,468 INFO L229 MonitoredProcess]: Starting monitored process 81 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) [2023-02-16 04:32:02,473 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 [2023-02-16 04:32:02,481 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,481 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,481 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,481 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,481 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,481 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,483 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,483 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2023-02-16 04:32:02,505 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,509 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,510 INFO L229 MonitoredProcess]: Starting monitored process 82 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) [2023-02-16 04:32:02,512 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2023-02-16 04:32:02,514 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 [2023-02-16 04:32:02,521 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,522 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,522 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,522 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,522 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,522 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,523 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,523 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,541 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,545 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,545 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,545 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,546 INFO L229 MonitoredProcess]: Starting monitored process 83 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) [2023-02-16 04:32:02,553 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 [2023-02-16 04:32:02,561 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,561 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,561 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,561 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,561 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,562 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,562 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,562 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,566 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Waiting until timeout for monitored process [2023-02-16 04:32:02,581 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,585 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,586 INFO L229 MonitoredProcess]: Starting monitored process 84 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) [2023-02-16 04:32:02,589 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Waiting until timeout for monitored process [2023-02-16 04:32:02,590 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 [2023-02-16 04:32:02,598 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,598 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,598 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,598 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,598 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,598 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,599 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,599 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,613 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,617 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,617 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:02,618 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,619 INFO L229 MonitoredProcess]: Starting monitored process 85 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) [2023-02-16 04:32:02,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 [2023-02-16 04:32:02,633 WARN L333 nArgumentSynthesizer]: Using a linear SMT query and a templates of degree > 0, hence this method is incomplete. [2023-02-16 04:32:02,634 INFO L338 nArgumentSynthesizer]: Template has degree 3. [2023-02-16 04:32:02,634 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:02,634 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:02,634 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:02,634 INFO L205 nArgumentSynthesizer]: 6 template conjuncts. [2023-02-16 04:32:02,635 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2023-02-16 04:32:02,636 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:02,640 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Waiting until timeout for monitored process [2023-02-16 04:32:02,657 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:02,661 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:02,661 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:02,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-02-16 04:32:02,662 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2023-02-16 04:32:02,662 INFO L87 Difference]: Start difference. First operand 28 states and 42 transitions. cyclomatic complexity: 16 Second operand has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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) [2023-02-16 04:32:02,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:02,696 INFO L93 Difference]: Finished difference Result 35 states and 55 transitions. [2023-02-16 04:32:02,696 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 35 states and 55 transitions. [2023-02-16 04:32:02,697 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 26 [2023-02-16 04:32:02,698 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 35 states to 35 states and 55 transitions. [2023-02-16 04:32:02,698 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35 [2023-02-16 04:32:02,699 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 35 [2023-02-16 04:32:02,699 INFO L73 IsDeterministic]: Start isDeterministic. Operand 35 states and 55 transitions. [2023-02-16 04:32:02,699 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-02-16 04:32:02,699 INFO L218 hiAutomatonCegarLoop]: Abstraction has 35 states and 55 transitions. [2023-02-16 04:32:02,699 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states and 55 transitions. [2023-02-16 04:32:02,703 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 29. [2023-02-16 04:32:02,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 7 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2023-02-16 04:32:02,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 43 transitions. [2023-02-16 04:32:02,704 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 43 transitions. [2023-02-16 04:32:02,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-02-16 04:32:02,705 INFO L428 stractBuchiCegarLoop]: Abstraction has 29 states and 43 transitions. [2023-02-16 04:32:02,705 INFO L335 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2023-02-16 04:32:02,705 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 43 transitions. [2023-02-16 04:32:02,706 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 20 [2023-02-16 04:32:02,706 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:02,706 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:02,707 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:32:02,707 INFO L149 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] [2023-02-16 04:32:02,707 INFO L748 eck$LassoCheckResult]: Stem: 548#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 534#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; 535#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 542#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; 538#L41-3 [2023-02-16 04:32:02,707 INFO L750 eck$LassoCheckResult]: Loop: 538#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 539#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 544#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; 530#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume !(~n <= 0); 527#L26 call #t~ret0 := fact(~n - 1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume ~n <= 0;#res := 1; 533#factFINAL assume true; 525#factEXIT >#66#return; 531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 545#factFINAL assume true; 550#factEXIT >#68#return; 528#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume !(~n <= 0); 527#L26 call #t~ret0 := fact(~n - 1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume ~n <= 0;#res := 1; 533#factFINAL assume true; 525#factEXIT >#66#return; 531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 545#factFINAL assume true; 550#factEXIT >#70#return; 524#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume !(~n <= 0); 527#L26 call #t~ret0 := fact(~n - 1);< 523#$Ultimate##0 ~n := #in~n; 546#L25 assume ~n <= 0;#res := 1; 533#factFINAL assume true; 525#factEXIT >#66#return; 531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 545#factFINAL assume true; 550#factEXIT >#72#return; 532#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; 540#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 543#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 547#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 541#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 538#L41-3 [2023-02-16 04:32:02,707 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:02,707 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 4 times [2023-02-16 04:32:02,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:02,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [302308945] [2023-02-16 04:32:02,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:02,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:02,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:02,711 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:02,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:02,713 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:02,714 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:02,714 INFO L85 PathProgramCache]: Analyzing trace with hash 1909923709, now seen corresponding path program 1 times [2023-02-16 04:32:02,714 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:02,714 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1947438899] [2023-02-16 04:32:02,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:02,714 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:02,721 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:02,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1562888449] [2023-02-16 04:32:02,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:02,721 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:02,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:02,722 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) [2023-02-16 04:32:02,751 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (86)] Waiting until timeout for monitored process [2023-02-16 04:32:02,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:02,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:32:02,779 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:02,833 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 47 proven. 1 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2023-02-16 04:32:02,834 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:02,898 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 11 proven. 9 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2023-02-16 04:32:02,899 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:02,899 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1947438899] [2023-02-16 04:32:02,899 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:02,899 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1562888449] [2023-02-16 04:32:02,899 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1562888449] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:02,899 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:02,899 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2023-02-16 04:32:02,900 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1399289791] [2023-02-16 04:32:02,900 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:02,900 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:02,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:02,901 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-02-16 04:32:02,901 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2023-02-16 04:32:02,901 INFO L87 Difference]: Start difference. First operand 29 states and 43 transitions. cyclomatic complexity: 16 Second operand has 7 states, 6 states have (on average 4.0) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2023-02-16 04:32:03,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:03,020 INFO L93 Difference]: Finished difference Result 41 states and 62 transitions. [2023-02-16 04:32:03,020 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 62 transitions. [2023-02-16 04:32:03,021 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 32 [2023-02-16 04:32:03,023 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 41 states and 62 transitions. [2023-02-16 04:32:03,023 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2023-02-16 04:32:03,023 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2023-02-16 04:32:03,023 INFO L73 IsDeterministic]: Start isDeterministic. Operand 41 states and 62 transitions. [2023-02-16 04:32:03,024 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-02-16 04:32:03,024 INFO L218 hiAutomatonCegarLoop]: Abstraction has 41 states and 62 transitions. [2023-02-16 04:32:03,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states and 62 transitions. [2023-02-16 04:32:03,027 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 31. [2023-02-16 04:32:03,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 9 states have call successors, (9), 1 states have call predecessors, (9), 2 states have return successors, (16), 8 states have call predecessors, (16), 9 states have call successors, (16) [2023-02-16 04:32:03,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 48 transitions. [2023-02-16 04:32:03,028 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 48 transitions. [2023-02-16 04:32:03,029 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-02-16 04:32:03,029 INFO L428 stractBuchiCegarLoop]: Abstraction has 31 states and 48 transitions. [2023-02-16 04:32:03,029 INFO L335 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2023-02-16 04:32:03,029 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 48 transitions. [2023-02-16 04:32:03,030 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 22 [2023-02-16 04:32:03,030 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:03,030 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:03,031 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2023-02-16 04:32:03,031 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:03,031 INFO L748 eck$LassoCheckResult]: Stem: 875#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 860#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; 861#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 868#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; 864#L41-3 [2023-02-16 04:32:03,031 INFO L750 eck$LassoCheckResult]: Loop: 864#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 865#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 870#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; 855#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 847#$Ultimate##0 ~n := #in~n; 874#L25 assume ~n <= 0;#res := 1; 859#factFINAL assume true; 849#factEXIT >#68#return; 851#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 847#$Ultimate##0 ~n := #in~n; 874#L25 assume ~n <= 0;#res := 1; 859#factFINAL assume true; 849#factEXIT >#70#return; 848#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 847#$Ultimate##0 ~n := #in~n; 874#L25 assume ~n <= 0;#res := 1; 859#factFINAL assume true; 849#factEXIT >#72#return; 858#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; 866#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 869#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 872#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 867#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 864#L41-3 [2023-02-16 04:32:03,032 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:03,032 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 5 times [2023-02-16 04:32:03,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:03,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1103300239] [2023-02-16 04:32:03,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:03,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:03,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,035 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:03,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,038 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:03,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:03,038 INFO L85 PathProgramCache]: Analyzing trace with hash -743603515, now seen corresponding path program 1 times [2023-02-16 04:32:03,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:03,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240311053] [2023-02-16 04:32:03,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:03,039 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:03,045 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:03,045 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [526333138] [2023-02-16 04:32:03,045 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:03,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:03,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,046 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) [2023-02-16 04:32:03,050 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (87)] Waiting until timeout for monitored process [2023-02-16 04:32:03,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,086 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:03,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,098 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:03,098 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:03,099 INFO L85 PathProgramCache]: Analyzing trace with hash 343305470, now seen corresponding path program 1 times [2023-02-16 04:32:03,099 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:03,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [499112942] [2023-02-16 04:32:03,099 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:03,099 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:03,106 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:03,106 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1884810643] [2023-02-16 04:32:03,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:03,107 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:03,107 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,110 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) [2023-02-16 04:32:03,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (88)] Waiting until timeout for monitored process [2023-02-16 04:32:03,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,147 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:03,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:03,162 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:03,370 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:03,371 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:03,371 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:03,371 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:03,371 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:32:03,371 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,371 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:03,371 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:03,371 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2023-02-16 04:32:03,371 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:03,371 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:03,372 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,374 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,390 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,392 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,393 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,395 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,398 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,400 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,466 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:03,467 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:32:03,467 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,469 INFO L229 MonitoredProcess]: Starting monitored process 89 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) [2023-02-16 04:32:03,470 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Waiting until timeout for monitored process [2023-02-16 04:32:03,471 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:03,471 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:03,478 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:03,478 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: [] [2023-02-16 04:32:03,481 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:03,481 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,482 INFO L229 MonitoredProcess]: Starting monitored process 90 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) [2023-02-16 04:32:03,483 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Waiting until timeout for monitored process [2023-02-16 04:32:03,485 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:03,485 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:03,494 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Ended with exit code 0 [2023-02-16 04:32:03,495 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,495 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,496 INFO L229 MonitoredProcess]: Starting monitored process 91 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) [2023-02-16 04:32:03,497 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Waiting until timeout for monitored process [2023-02-16 04:32:03,499 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:03,499 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:03,823 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:03,828 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Ended with exit code 0 [2023-02-16 04:32:03,828 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:03,828 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:03,828 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:03,828 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:03,828 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:03,828 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,828 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:03,828 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:03,828 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2023-02-16 04:32:03,828 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:03,828 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:03,829 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,832 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,845 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,846 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,852 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,854 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,855 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,857 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:03,920 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:03,920 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:03,922 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,922 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,923 INFO L229 MonitoredProcess]: Starting monitored process 92 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) [2023-02-16 04:32:03,924 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (92)] Waiting until timeout for monitored process [2023-02-16 04:32:03,926 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 [2023-02-16 04:32:03,932 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:03,932 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:03,932 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:03,932 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:03,932 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:03,932 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:03,932 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:03,933 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:03,936 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (92)] Ended with exit code 0 [2023-02-16 04:32:03,936 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,936 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,937 INFO L229 MonitoredProcess]: Starting monitored process 93 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) [2023-02-16 04:32:03,938 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (93)] Waiting until timeout for monitored process [2023-02-16 04:32:03,940 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 [2023-02-16 04:32:03,946 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:03,946 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:03,946 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:03,947 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:03,947 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:03,948 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:03,948 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:03,951 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:32:03,990 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2023-02-16 04:32:03,990 INFO L444 ModelExtractionUtils]: 5 out of 9 variables were initially zero. Simplification set additionally 1 variables to zero. [2023-02-16 04:32:03,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:03,991 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:03,997 INFO L229 MonitoredProcess]: Starting monitored process 94 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) [2023-02-16 04:32:04,001 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:32:04,001 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:32:04,001 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:32:04,001 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 [] [2023-02-16 04:32:04,004 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (94)] Waiting until timeout for monitored process [2023-02-16 04:32:04,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (93)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:04,007 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:32:04,021 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:04,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:04,026 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2023-02-16 04:32:04,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:04,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:04,063 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 14 conjunts are in the unsatisfiable core [2023-02-16 04:32:04,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:04,148 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (94)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:04,199 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2023-02-16 04:32:04,201 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 6 loop predicates [2023-02-16 04:32:04,201 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 31 states and 48 transitions. cyclomatic complexity: 19 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) [2023-02-16 04:32:04,419 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 31 states and 48 transitions. cyclomatic complexity: 19. 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 123 states and 190 transitions. Complement of second has 26 states. [2023-02-16 04:32:04,420 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 [2023-02-16 04:32:04,421 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) [2023-02-16 04:32:04,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 71 transitions. [2023-02-16 04:32:04,423 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 71 transitions. Stem has 4 letters. Loop has 23 letters. [2023-02-16 04:32:04,424 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:04,424 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 71 transitions. Stem has 27 letters. Loop has 23 letters. [2023-02-16 04:32:04,425 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:04,425 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 71 transitions. Stem has 4 letters. Loop has 46 letters. [2023-02-16 04:32:04,427 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:04,427 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 123 states and 190 transitions. [2023-02-16 04:32:04,435 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 35 [2023-02-16 04:32:04,442 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 123 states to 122 states and 189 transitions. [2023-02-16 04:32:04,442 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 62 [2023-02-16 04:32:04,443 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 63 [2023-02-16 04:32:04,444 INFO L73 IsDeterministic]: Start isDeterministic. Operand 122 states and 189 transitions. [2023-02-16 04:32:04,448 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:04,448 INFO L218 hiAutomatonCegarLoop]: Abstraction has 122 states and 189 transitions. [2023-02-16 04:32:04,449 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 122 states and 189 transitions. [2023-02-16 04:32:04,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 122 to 117. [2023-02-16 04:32:04,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 117 states, 71 states have (on average 1.2112676056338028) internal successors, (86), 76 states have internal predecessors, (86), 36 states have call successors, (36), 6 states have call predecessors, (36), 10 states have return successors, (58), 34 states have call predecessors, (58), 36 states have call successors, (58) [2023-02-16 04:32:04,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 180 transitions. [2023-02-16 04:32:04,470 INFO L240 hiAutomatonCegarLoop]: Abstraction has 117 states and 180 transitions. [2023-02-16 04:32:04,470 INFO L428 stractBuchiCegarLoop]: Abstraction has 117 states and 180 transitions. [2023-02-16 04:32:04,470 INFO L335 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2023-02-16 04:32:04,470 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 117 states and 180 transitions. [2023-02-16 04:32:04,473 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 35 [2023-02-16 04:32:04,473 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:04,473 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:04,475 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2023-02-16 04:32:04,475 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:04,475 INFO L748 eck$LassoCheckResult]: Stem: 1203#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 1164#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; 1165#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1182#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; 1204#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1173#L42-3 [2023-02-16 04:32:04,475 INFO L750 eck$LassoCheckResult]: Loop: 1173#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1191#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; 1215#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 1222#$Ultimate##0 ~n := #in~n; 1228#L25 assume !(~n <= 0); 1138#L26 call #t~ret0 := fact(~n - 1);< 1170#$Ultimate##0 ~n := #in~n; 1189#L25 assume ~n <= 0;#res := 1; 1154#factFINAL assume true; 1137#factEXIT >#66#return; 1141#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1225#factFINAL assume true; 1213#factEXIT >#68#return; 1218#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 1222#$Ultimate##0 ~n := #in~n; 1228#L25 assume ~n <= 0;#res := 1; 1226#factFINAL assume true; 1223#factEXIT >#70#return; 1217#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 1222#$Ultimate##0 ~n := #in~n; 1228#L25 assume ~n <= 0;#res := 1; 1226#factFINAL assume true; 1223#factEXIT >#72#return; 1212#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; 1210#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 1208#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 1206#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1180#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1172#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1173#L42-3 [2023-02-16 04:32:04,475 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:04,475 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 1 times [2023-02-16 04:32:04,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:04,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [664641262] [2023-02-16 04:32:04,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:04,476 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:04,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:04,490 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:04,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:04,492 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:04,493 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:04,493 INFO L85 PathProgramCache]: Analyzing trace with hash -304298247, now seen corresponding path program 2 times [2023-02-16 04:32:04,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:04,493 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1036759290] [2023-02-16 04:32:04,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:04,493 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:04,503 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:04,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [976523449] [2023-02-16 04:32:04,503 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:04,503 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:04,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:04,511 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) [2023-02-16 04:32:04,512 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (95)] Waiting until timeout for monitored process [2023-02-16 04:32:04,543 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:04,544 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:04,544 INFO L263 TraceCheckSpWp]: Trace formula consists of 71 conjuncts, 9 conjunts are in the unsatisfiable core [2023-02-16 04:32:04,545 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:04,591 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 9 proven. 7 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-02-16 04:32:04,591 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:04,704 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 9 proven. 7 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-02-16 04:32:04,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:04,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1036759290] [2023-02-16 04:32:04,705 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:04,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [976523449] [2023-02-16 04:32:04,705 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [976523449] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:04,705 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:04,705 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 11 [2023-02-16 04:32:04,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1817896114] [2023-02-16 04:32:04,705 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:04,705 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:04,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:04,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2023-02-16 04:32:04,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2023-02-16 04:32:04,706 INFO L87 Difference]: Start difference. First operand 117 states and 180 transitions. cyclomatic complexity: 68 Second operand has 11 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 5 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2023-02-16 04:32:04,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:04,949 INFO L93 Difference]: Finished difference Result 249 states and 362 transitions. [2023-02-16 04:32:04,949 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 249 states and 362 transitions. [2023-02-16 04:32:04,954 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 87 [2023-02-16 04:32:04,960 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 249 states to 249 states and 362 transitions. [2023-02-16 04:32:04,960 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 122 [2023-02-16 04:32:04,961 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 122 [2023-02-16 04:32:04,962 INFO L73 IsDeterministic]: Start isDeterministic. Operand 249 states and 362 transitions. [2023-02-16 04:32:04,962 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:04,962 INFO L218 hiAutomatonCegarLoop]: Abstraction has 249 states and 362 transitions. [2023-02-16 04:32:04,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states and 362 transitions. [2023-02-16 04:32:04,986 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 131. [2023-02-16 04:32:04,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 80 states have internal predecessors, (94), 42 states have call successors, (42), 10 states have call predecessors, (42), 10 states have return successors, (66), 40 states have call predecessors, (66), 42 states have call successors, (66) [2023-02-16 04:32:04,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 202 transitions. [2023-02-16 04:32:04,988 INFO L240 hiAutomatonCegarLoop]: Abstraction has 131 states and 202 transitions. [2023-02-16 04:32:04,989 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-02-16 04:32:04,990 INFO L428 stractBuchiCegarLoop]: Abstraction has 131 states and 202 transitions. [2023-02-16 04:32:04,990 INFO L335 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2023-02-16 04:32:04,990 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 131 states and 202 transitions. [2023-02-16 04:32:04,991 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 38 [2023-02-16 04:32:04,991 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:04,991 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:04,992 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2023-02-16 04:32:04,992 INFO L149 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] [2023-02-16 04:32:04,992 INFO L748 eck$LassoCheckResult]: Stem: 1773#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 1728#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; 1729#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1756#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; 1774#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1746#L42-3 [2023-02-16 04:32:04,992 INFO L750 eck$LassoCheckResult]: Loop: 1746#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1759#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; 1760#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 1796#$Ultimate##0 ~n := #in~n; 1801#L25 assume !(~n <= 0); 1700#L26 call #t~ret0 := fact(~n - 1);< 1734#$Ultimate##0 ~n := #in~n; 1804#L25 assume ~n <= 0;#res := 1; 1802#factFINAL assume true; 1698#factEXIT >#66#return; 1704#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1795#factFINAL assume true; 1786#factEXIT >#68#return; 1789#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 1796#$Ultimate##0 ~n := #in~n; 1801#L25 assume ~n <= 0;#res := 1; 1800#factFINAL assume true; 1799#factEXIT >#70#return; 1787#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 1794#$Ultimate##0 ~n := #in~n; 1798#L25 assume !(~n <= 0); 1700#L26 call #t~ret0 := fact(~n - 1);< 1734#$Ultimate##0 ~n := #in~n; 1804#L25 assume ~n <= 0;#res := 1; 1802#factFINAL assume true; 1698#factEXIT >#66#return; 1704#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1795#factFINAL assume true; 1786#factEXIT >#72#return; 1793#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; 1784#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 1782#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 1781#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1753#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1745#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1746#L42-3 [2023-02-16 04:32:04,992 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:04,993 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 2 times [2023-02-16 04:32:04,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:04,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [138462299] [2023-02-16 04:32:04,993 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:04,993 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:04,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:04,995 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:04,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:04,997 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:04,997 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:04,997 INFO L85 PathProgramCache]: Analyzing trace with hash 1403101825, now seen corresponding path program 3 times [2023-02-16 04:32:04,997 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:04,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1618147965] [2023-02-16 04:32:04,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:04,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:05,001 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:05,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [208036409] [2023-02-16 04:32:05,001 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:32:05,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:05,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:05,003 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) [2023-02-16 04:32:05,016 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (96)] Waiting until timeout for monitored process [2023-02-16 04:32:05,035 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2023-02-16 04:32:05,035 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:05,035 INFO L263 TraceCheckSpWp]: Trace formula consists of 35 conjuncts, 5 conjunts are in the unsatisfiable core [2023-02-16 04:32:05,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:05,073 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2023-02-16 04:32:05,073 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-02-16 04:32:05,073 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:05,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1618147965] [2023-02-16 04:32:05,073 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:05,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [208036409] [2023-02-16 04:32:05,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [208036409] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:32:05,073 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:32:05,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-02-16 04:32:05,074 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1780602839] [2023-02-16 04:32:05,074 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:32:05,074 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:05,074 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:05,074 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-02-16 04:32:05,075 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2023-02-16 04:32:05,075 INFO L87 Difference]: Start difference. First operand 131 states and 202 transitions. cyclomatic complexity: 76 Second operand has 6 states, 5 states have (on average 2.6) 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) [2023-02-16 04:32:05,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:05,131 INFO L93 Difference]: Finished difference Result 173 states and 268 transitions. [2023-02-16 04:32:05,131 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 173 states and 268 transitions. [2023-02-16 04:32:05,133 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 56 [2023-02-16 04:32:05,136 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 173 states to 167 states and 262 transitions. [2023-02-16 04:32:05,136 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 85 [2023-02-16 04:32:05,136 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 85 [2023-02-16 04:32:05,136 INFO L73 IsDeterministic]: Start isDeterministic. Operand 167 states and 262 transitions. [2023-02-16 04:32:05,137 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:05,137 INFO L218 hiAutomatonCegarLoop]: Abstraction has 167 states and 262 transitions. [2023-02-16 04:32:05,137 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states and 262 transitions. [2023-02-16 04:32:05,144 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 137. [2023-02-16 04:32:05,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 137 states, 85 states have (on average 1.1764705882352942) internal successors, (100), 86 states have internal predecessors, (100), 42 states have call successors, (42), 10 states have call predecessors, (42), 10 states have return successors, (66), 40 states have call predecessors, (66), 42 states have call successors, (66) [2023-02-16 04:32:05,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 137 states to 137 states and 208 transitions. [2023-02-16 04:32:05,146 INFO L240 hiAutomatonCegarLoop]: Abstraction has 137 states and 208 transitions. [2023-02-16 04:32:05,147 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-02-16 04:32:05,147 INFO L428 stractBuchiCegarLoop]: Abstraction has 137 states and 208 transitions. [2023-02-16 04:32:05,147 INFO L335 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2023-02-16 04:32:05,147 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 137 states and 208 transitions. [2023-02-16 04:32:05,148 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 40 [2023-02-16 04:32:05,149 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:05,149 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:05,150 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2023-02-16 04:32:05,150 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 6, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:05,150 INFO L748 eck$LassoCheckResult]: Stem: 2176#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 2143#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; 2144#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2161#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; 2177#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 2152#L42-3 [2023-02-16 04:32:05,150 INFO L750 eck$LassoCheckResult]: Loop: 2152#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 2216#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; 2205#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 2213#$Ultimate##0 ~n := #in~n; 2218#L25 assume !(~n <= 0); 2119#L26 call #t~ret0 := fact(~n - 1);< 2149#$Ultimate##0 ~n := #in~n; 2236#L25 assume ~n <= 0;#res := 1; 2134#factFINAL assume true; 2118#factEXIT >#66#return; 2124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2212#factFINAL assume true; 2200#factEXIT >#68#return; 2201#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 2213#$Ultimate##0 ~n := #in~n; 2218#L25 assume ~n <= 0;#res := 1; 2217#factFINAL assume true; 2215#factEXIT >#70#return; 2208#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 2211#$Ultimate##0 ~n := #in~n; 2214#L25 assume !(~n <= 0); 2119#L26 call #t~ret0 := fact(~n - 1);< 2149#$Ultimate##0 ~n := #in~n; 2236#L25 assume ~n <= 0;#res := 1; 2134#factFINAL assume true; 2118#factEXIT >#66#return; 2124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2212#factFINAL assume true; 2200#factEXIT >#72#return; 2210#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; 2245#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 2223#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 2221#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 2181#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; 2202#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 2213#$Ultimate##0 ~n := #in~n; 2218#L25 assume !(~n <= 0); 2119#L26 call #t~ret0 := fact(~n - 1);< 2149#$Ultimate##0 ~n := #in~n; 2236#L25 assume ~n <= 0;#res := 1; 2134#factFINAL assume true; 2118#factEXIT >#66#return; 2124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2212#factFINAL assume true; 2200#factEXIT >#74#return; 2203#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 2213#$Ultimate##0 ~n := #in~n; 2218#L25 assume ~n <= 0;#res := 1; 2217#factFINAL assume true; 2215#factEXIT >#76#return; 2206#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 2211#$Ultimate##0 ~n := #in~n; 2214#L25 assume !(~n <= 0); 2119#L26 call #t~ret0 := fact(~n - 1);< 2149#$Ultimate##0 ~n := #in~n; 2236#L25 assume ~n <= 0;#res := 1; 2134#factFINAL assume true; 2118#factEXIT >#66#return; 2124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2212#factFINAL assume true; 2200#factEXIT >#78#return; 2199#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; 2194#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 2182#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 2180#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 2155#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 2151#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 2152#L42-3 [2023-02-16 04:32:05,151 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:05,151 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 3 times [2023-02-16 04:32:05,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:05,151 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [538495405] [2023-02-16 04:32:05,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:05,151 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:05,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:05,154 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:05,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:05,156 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:05,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:05,157 INFO L85 PathProgramCache]: Analyzing trace with hash 1715041092, now seen corresponding path program 1 times [2023-02-16 04:32:05,157 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:05,157 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [367290821] [2023-02-16 04:32:05,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:05,157 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:05,163 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:05,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [996703943] [2023-02-16 04:32:05,163 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:05,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:05,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:05,166 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) [2023-02-16 04:32:05,167 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (97)] Waiting until timeout for monitored process [2023-02-16 04:32:05,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:05,219 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 12 conjunts are in the unsatisfiable core [2023-02-16 04:32:05,221 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:05,322 INFO L134 CoverageAnalysis]: Checked inductivity of 197 backedges. 118 proven. 18 refuted. 0 times theorem prover too weak. 61 trivial. 0 not checked. [2023-02-16 04:32:05,323 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:05,533 INFO L134 CoverageAnalysis]: Checked inductivity of 197 backedges. 10 proven. 52 refuted. 0 times theorem prover too weak. 135 trivial. 0 not checked. [2023-02-16 04:32:05,533 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:05,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [367290821] [2023-02-16 04:32:05,533 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:05,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [996703943] [2023-02-16 04:32:05,533 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [996703943] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:05,534 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:05,534 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2023-02-16 04:32:05,534 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2107630973] [2023-02-16 04:32:05,534 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:05,535 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:05,535 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:05,535 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2023-02-16 04:32:05,535 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=194, Unknown=0, NotChecked=0, Total=240 [2023-02-16 04:32:05,535 INFO L87 Difference]: Start difference. First operand 137 states and 208 transitions. cyclomatic complexity: 76 Second operand has 16 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 14 states have internal predecessors, (40), 9 states have call successors, (15), 2 states have call predecessors, (15), 4 states have return successors, (15), 7 states have call predecessors, (15), 9 states have call successors, (15) [2023-02-16 04:32:06,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:06,011 INFO L93 Difference]: Finished difference Result 270 states and 395 transitions. [2023-02-16 04:32:06,011 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 270 states and 395 transitions. [2023-02-16 04:32:06,014 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 105 [2023-02-16 04:32:06,017 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 270 states to 270 states and 395 transitions. [2023-02-16 04:32:06,017 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 136 [2023-02-16 04:32:06,018 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 136 [2023-02-16 04:32:06,018 INFO L73 IsDeterministic]: Start isDeterministic. Operand 270 states and 395 transitions. [2023-02-16 04:32:06,018 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:06,018 INFO L218 hiAutomatonCegarLoop]: Abstraction has 270 states and 395 transitions. [2023-02-16 04:32:06,018 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 270 states and 395 transitions. [2023-02-16 04:32:06,025 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 270 to 185. [2023-02-16 04:32:06,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 185 states, 125 states have (on average 1.12) internal successors, (140), 122 states have internal predecessors, (140), 50 states have call successors, (50), 10 states have call predecessors, (50), 10 states have return successors, (82), 52 states have call predecessors, (82), 50 states have call successors, (82) [2023-02-16 04:32:06,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 272 transitions. [2023-02-16 04:32:06,027 INFO L240 hiAutomatonCegarLoop]: Abstraction has 185 states and 272 transitions. [2023-02-16 04:32:06,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-02-16 04:32:06,028 INFO L428 stractBuchiCegarLoop]: Abstraction has 185 states and 272 transitions. [2023-02-16 04:32:06,028 INFO L335 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2023-02-16 04:32:06,028 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 185 states and 272 transitions. [2023-02-16 04:32:06,030 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 64 [2023-02-16 04:32:06,030 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:06,030 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:06,031 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2023-02-16 04:32:06,031 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [15, 15, 9, 6, 6, 6, 6, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:06,031 INFO L748 eck$LassoCheckResult]: Stem: 3031#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 2992#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; 2993#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 3010#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; 3032#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 3001#L42-3 [2023-02-16 04:32:06,031 INFO L750 eck$LassoCheckResult]: Loop: 3001#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 3082#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; 3059#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#68#return; 3054#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume ~n <= 0;#res := 1; 3076#factFINAL assume true; 3075#factEXIT >#70#return; 3058#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 3063#$Ultimate##0 ~n := #in~n; 3070#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#72#return; 3062#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; 3137#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 3133#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 3079#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 3077#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; 3060#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#68#return; 3053#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#70#return; 3057#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume ~n <= 0;#res := 1; 3076#factFINAL assume true; 3075#factEXIT >#72#return; 3074#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; 3073#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 3071#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 3069#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 3035#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; 3043#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#74#return; 3055#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 3065#$Ultimate##0 ~n := #in~n; 3072#L25 assume ~n <= 0;#res := 1; 3076#factFINAL assume true; 3075#factEXIT >#76#return; 3056#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 3063#$Ultimate##0 ~n := #in~n; 3070#L25 assume !(~n <= 0); 3025#L26 call #t~ret0 := fact(~n - 1);< 2997#$Ultimate##0 ~n := #in~n; 3026#L25 assume ~n <= 0;#res := 1; 3078#factFINAL assume true; 3067#factEXIT >#66#return; 3066#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 3064#factFINAL assume true; 3052#factEXIT >#78#return; 3047#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; 3041#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 3036#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 3034#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 3007#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 3000#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 3001#L42-3 [2023-02-16 04:32:06,032 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:06,032 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 4 times [2023-02-16 04:32:06,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:06,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1828231497] [2023-02-16 04:32:06,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:06,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:06,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:06,035 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:06,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:06,037 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:06,037 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:06,037 INFO L85 PathProgramCache]: Analyzing trace with hash -1813506637, now seen corresponding path program 2 times [2023-02-16 04:32:06,037 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:06,037 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [360892917] [2023-02-16 04:32:06,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:06,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:06,044 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:06,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [818547838] [2023-02-16 04:32:06,044 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:06,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:06,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:06,047 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) [2023-02-16 04:32:06,059 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (98)] Waiting until timeout for monitored process [2023-02-16 04:32:06,106 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:06,106 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:06,107 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 19 conjunts are in the unsatisfiable core [2023-02-16 04:32:06,110 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:06,237 INFO L134 CoverageAnalysis]: Checked inductivity of 467 backedges. 230 proven. 82 refuted. 0 times theorem prover too weak. 155 trivial. 0 not checked. [2023-02-16 04:32:06,237 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:06,618 INFO L134 CoverageAnalysis]: Checked inductivity of 467 backedges. 79 proven. 134 refuted. 0 times theorem prover too weak. 254 trivial. 0 not checked. [2023-02-16 04:32:06,618 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:06,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [360892917] [2023-02-16 04:32:06,618 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:06,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [818547838] [2023-02-16 04:32:06,619 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [818547838] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:06,619 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:06,619 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 18 [2023-02-16 04:32:06,619 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [724708826] [2023-02-16 04:32:06,619 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:06,619 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:06,619 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:06,620 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2023-02-16 04:32:06,620 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=252, Unknown=0, NotChecked=0, Total=306 [2023-02-16 04:32:06,620 INFO L87 Difference]: Start difference. First operand 185 states and 272 transitions. cyclomatic complexity: 92 Second operand has 18 states, 13 states have (on average 3.4615384615384617) internal successors, (45), 16 states have internal predecessors, (45), 11 states have call successors, (19), 2 states have call predecessors, (19), 5 states have return successors, (19), 8 states have call predecessors, (19), 11 states have call successors, (19) [2023-02-16 04:32:07,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:07,154 INFO L93 Difference]: Finished difference Result 337 states and 498 transitions. [2023-02-16 04:32:07,154 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 337 states and 498 transitions. [2023-02-16 04:32:07,158 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 86 [2023-02-16 04:32:07,163 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 337 states to 337 states and 498 transitions. [2023-02-16 04:32:07,163 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 167 [2023-02-16 04:32:07,163 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 167 [2023-02-16 04:32:07,163 INFO L73 IsDeterministic]: Start isDeterministic. Operand 337 states and 498 transitions. [2023-02-16 04:32:07,163 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:07,164 INFO L218 hiAutomatonCegarLoop]: Abstraction has 337 states and 498 transitions. [2023-02-16 04:32:07,164 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states and 498 transitions. [2023-02-16 04:32:07,173 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 211. [2023-02-16 04:32:07,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 211 states, 145 states have (on average 1.1172413793103448) internal successors, (162), 144 states have internal predecessors, (162), 50 states have call successors, (50), 10 states have call predecessors, (50), 16 states have return successors, (104), 56 states have call predecessors, (104), 50 states have call successors, (104) [2023-02-16 04:32:07,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 211 states to 211 states and 316 transitions. [2023-02-16 04:32:07,176 INFO L240 hiAutomatonCegarLoop]: Abstraction has 211 states and 316 transitions. [2023-02-16 04:32:07,176 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-02-16 04:32:07,176 INFO L428 stractBuchiCegarLoop]: Abstraction has 211 states and 316 transitions. [2023-02-16 04:32:07,177 INFO L335 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2023-02-16 04:32:07,177 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 211 states and 316 transitions. [2023-02-16 04:32:07,178 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 56 [2023-02-16 04:32:07,178 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:07,178 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:07,179 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2023-02-16 04:32:07,179 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [17, 17, 9, 8, 8, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:07,180 INFO L748 eck$LassoCheckResult]: Stem: 4185#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 4144#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; 4145#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 4168#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; 4186#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 4159#L42-3 [2023-02-16 04:32:07,180 INFO L750 eck$LassoCheckResult]: Loop: 4159#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 4214#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; 4201#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 4209#$Ultimate##0 ~n := #in~n; 4212#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#68#return; 4193#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 4209#$Ultimate##0 ~n := #in~n; 4212#L25 assume ~n <= 0;#res := 1; 4210#factFINAL assume true; 4207#factEXIT >#70#return; 4194#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 4206#$Ultimate##0 ~n := #in~n; 4220#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#72#return; 4204#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; 4231#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 4230#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 4229#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 4228#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; 4203#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 4206#$Ultimate##0 ~n := #in~n; 4220#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#68#return; 4196#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 4209#$Ultimate##0 ~n := #in~n; 4212#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#70#return; 4195#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 4209#$Ultimate##0 ~n := #in~n; 4212#L25 assume ~n <= 0;#res := 1; 4210#factFINAL assume true; 4207#factEXIT >#72#return; 4208#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; 4237#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 4234#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 4233#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 4188#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; 4200#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 4206#$Ultimate##0 ~n := #in~n; 4220#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume !(~n <= 0); 4218#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4219#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4221#factFINAL assume true; 4217#factEXIT >#66#return; 4216#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4215#factFINAL assume true; 4211#factEXIT >#74#return; 4202#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 4209#$Ultimate##0 ~n := #in~n; 4212#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#76#return; 4199#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 4206#$Ultimate##0 ~n := #in~n; 4220#L25 assume !(~n <= 0); 4213#L26 call #t~ret0 := fact(~n - 1);< 4153#$Ultimate##0 ~n := #in~n; 4227#L25 assume ~n <= 0;#res := 1; 4225#factFINAL assume true; 4222#factEXIT >#66#return; 4224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 4226#factFINAL assume true; 4192#factEXIT >#78#return; 4191#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; 4190#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 4189#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 4187#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 4166#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 4158#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 4159#L42-3 [2023-02-16 04:32:07,180 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:07,181 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 5 times [2023-02-16 04:32:07,181 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:07,181 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [872240231] [2023-02-16 04:32:07,181 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:07,181 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:07,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:07,184 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:07,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:07,186 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:07,186 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:07,187 INFO L85 PathProgramCache]: Analyzing trace with hash 590406435, now seen corresponding path program 3 times [2023-02-16 04:32:07,187 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:07,187 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [176912796] [2023-02-16 04:32:07,187 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:07,187 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:07,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:07,195 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1463234353] [2023-02-16 04:32:07,195 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:32:07,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:07,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:07,201 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) [2023-02-16 04:32:07,224 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (99)] Waiting until timeout for monitored process [2023-02-16 04:32:07,289 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2023-02-16 04:32:07,289 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:07,289 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:07,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:07,377 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:07,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:07,378 INFO L85 PathProgramCache]: Analyzing trace with hash -552239216, now seen corresponding path program 1 times [2023-02-16 04:32:07,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:07,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [736504401] [2023-02-16 04:32:07,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:07,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:07,393 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:07,393 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1975404884] [2023-02-16 04:32:07,393 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:07,393 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:07,393 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:07,409 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) [2023-02-16 04:32:07,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (100)] Waiting until timeout for monitored process [2023-02-16 04:32:07,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:07,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 270 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:32:07,480 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:07,510 INFO L134 CoverageAnalysis]: Checked inductivity of 618 backedges. 143 proven. 1 refuted. 0 times theorem prover too weak. 474 trivial. 0 not checked. [2023-02-16 04:32:07,510 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:07,615 INFO L134 CoverageAnalysis]: Checked inductivity of 618 backedges. 9 proven. 60 refuted. 0 times theorem prover too weak. 549 trivial. 0 not checked. [2023-02-16 04:32:07,615 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:07,615 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [736504401] [2023-02-16 04:32:07,615 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:07,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1975404884] [2023-02-16 04:32:07,616 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1975404884] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:07,616 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:07,616 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2023-02-16 04:32:07,616 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [283307800] [2023-02-16 04:32:07,616 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:10,124 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:10,124 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:10,124 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:10,124 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:10,125 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:32:10,125 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,125 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:10,125 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:10,125 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2023-02-16 04:32:10,125 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:10,125 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:10,126 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,129 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,144 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,145 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,147 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,149 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,150 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,152 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,154 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,313 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:10,313 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:32:10,313 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,313 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,318 INFO L229 MonitoredProcess]: Starting monitored process 101 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) [2023-02-16 04:32:10,320 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (101)] Waiting until timeout for monitored process [2023-02-16 04:32:10,321 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:10,321 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:10,328 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:10,328 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: [] [2023-02-16 04:32:10,330 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (101)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:10,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,331 INFO L229 MonitoredProcess]: Starting monitored process 102 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) [2023-02-16 04:32:10,333 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Waiting until timeout for monitored process [2023-02-16 04:32:10,334 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:10,334 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:10,344 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Ended with exit code 0 [2023-02-16 04:32:10,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,345 INFO L229 MonitoredProcess]: Starting monitored process 103 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) [2023-02-16 04:32:10,346 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (103)] Waiting until timeout for monitored process [2023-02-16 04:32:10,348 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:10,348 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:10,589 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:10,593 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (103)] Ended with exit code 0 [2023-02-16 04:32:10,593 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:10,593 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:10,593 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:10,593 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:10,593 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:10,593 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,593 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:10,593 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:10,593 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2023-02-16 04:32:10,593 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:10,593 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:10,595 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,598 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,599 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,601 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,618 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,619 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,621 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,623 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,625 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:10,794 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:10,794 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:10,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,796 INFO L229 MonitoredProcess]: Starting monitored process 104 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) [2023-02-16 04:32:10,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (104)] Waiting until timeout for monitored process [2023-02-16 04:32:10,799 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 [2023-02-16 04:32:10,805 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:10,805 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:10,805 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:10,805 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:10,805 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:10,806 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:10,806 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:10,806 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:10,809 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (104)] Ended with exit code 0 [2023-02-16 04:32:10,809 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,809 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,810 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) [2023-02-16 04:32:10,811 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 [2023-02-16 04:32:10,813 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 [2023-02-16 04:32:10,819 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:10,820 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:10,820 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:10,820 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:10,820 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:10,820 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:10,820 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:10,821 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:10,823 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Ended with exit code 0 [2023-02-16 04:32:10,823 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,824 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,825 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) [2023-02-16 04:32:10,826 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 [2023-02-16 04:32:10,829 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 [2023-02-16 04:32:10,834 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:10,834 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:10,835 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:10,835 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:10,835 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:10,835 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:10,835 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:10,836 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:10,838 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Ended with exit code 0 [2023-02-16 04:32:10,838 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,839 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) [2023-02-16 04:32:10,840 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 [2023-02-16 04:32:10,842 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 [2023-02-16 04:32:10,848 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:10,848 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:10,848 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:10,848 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:10,848 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:10,850 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:10,850 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:10,853 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:32:10,856 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2023-02-16 04:32:10,856 INFO L444 ModelExtractionUtils]: 5 out of 9 variables were initially zero. Simplification set additionally 1 variables to zero. [2023-02-16 04:32:10,856 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:10,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:10,859 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) [2023-02-16 04:32:10,860 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 [2023-02-16 04:32:10,861 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:32:10,861 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:32:10,861 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:32:10,861 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 [] [2023-02-16 04:32:10,863 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 [2023-02-16 04:32:10,864 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:32:10,882 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:10,882 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:10,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:10,886 INFO L263 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 2 conjunts are in the unsatisfiable core [2023-02-16 04:32:10,886 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:10,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:10,997 INFO L263 TraceCheckSpWp]: Trace formula consists of 733 conjuncts, 44 conjunts are in the unsatisfiable core [2023-02-16 04:32:11,000 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:11,276 INFO L134 CoverageAnalysis]: Checked inductivity of 617 backedges. 5 proven. 107 refuted. 0 times theorem prover too weak. 505 trivial. 0 not checked. [2023-02-16 04:32:11,277 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 8 loop predicates [2023-02-16 04:32:11,278 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 211 states and 316 transitions. cyclomatic complexity: 110 Second operand has 10 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 10 states have internal predecessors, (29), 4 states have call successors, (9), 1 states have call predecessors, (9), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2023-02-16 04:32:11,540 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 211 states and 316 transitions. cyclomatic complexity: 110. Second operand has 10 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 10 states have internal predecessors, (29), 4 states have call successors, (9), 1 states have call predecessors, (9), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) Result 607 states and 918 transitions. Complement of second has 32 states. [2023-02-16 04:32:11,540 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 9 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2023-02-16 04:32:11,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 10 states have internal predecessors, (29), 4 states have call successors, (9), 1 states have call predecessors, (9), 3 states have return successors, (9), 3 states have call predecessors, (9), 4 states have call successors, (9) [2023-02-16 04:32:11,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 84 transitions. [2023-02-16 04:32:11,541 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 84 transitions. Stem has 5 letters. Loop has 111 letters. [2023-02-16 04:32:11,543 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:11,543 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 84 transitions. Stem has 116 letters. Loop has 111 letters. [2023-02-16 04:32:11,544 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:11,544 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 84 transitions. Stem has 5 letters. Loop has 222 letters. [2023-02-16 04:32:11,547 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:11,548 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 607 states and 918 transitions. [2023-02-16 04:32:11,555 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 77 [2023-02-16 04:32:11,560 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 607 states to 410 states and 616 transitions. [2023-02-16 04:32:11,560 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 153 [2023-02-16 04:32:11,561 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 155 [2023-02-16 04:32:11,561 INFO L73 IsDeterministic]: Start isDeterministic. Operand 410 states and 616 transitions. [2023-02-16 04:32:11,561 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:11,561 INFO L218 hiAutomatonCegarLoop]: Abstraction has 410 states and 616 transitions. [2023-02-16 04:32:11,561 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 410 states and 616 transitions. [2023-02-16 04:32:11,572 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 410 to 394. [2023-02-16 04:32:11,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 394 states, 268 states have (on average 1.1194029850746268) internal successors, (300), 265 states have internal predecessors, (300), 96 states have call successors, (96), 19 states have call predecessors, (96), 30 states have return successors, (196), 109 states have call predecessors, (196), 96 states have call successors, (196) [2023-02-16 04:32:11,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 394 states to 394 states and 592 transitions. [2023-02-16 04:32:11,576 INFO L240 hiAutomatonCegarLoop]: Abstraction has 394 states and 592 transitions. [2023-02-16 04:32:11,576 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:11,576 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-02-16 04:32:11,577 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2023-02-16 04:32:11,577 INFO L87 Difference]: Start difference. First operand 394 states and 592 transitions. Second operand has 7 states, 6 states have (on average 5.666666666666667) internal successors, (34), 7 states have internal predecessors, (34), 4 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (16), 3 states have call predecessors, (16), 4 states have call successors, (16) [2023-02-16 04:32:11,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:11,701 INFO L93 Difference]: Finished difference Result 448 states and 677 transitions. [2023-02-16 04:32:11,701 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 448 states and 677 transitions. [2023-02-16 04:32:11,706 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2023-02-16 04:32:11,711 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 448 states to 439 states and 663 transitions. [2023-02-16 04:32:11,711 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 173 [2023-02-16 04:32:11,711 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 173 [2023-02-16 04:32:11,711 INFO L73 IsDeterministic]: Start isDeterministic. Operand 439 states and 663 transitions. [2023-02-16 04:32:11,711 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:11,711 INFO L218 hiAutomatonCegarLoop]: Abstraction has 439 states and 663 transitions. [2023-02-16 04:32:11,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 439 states and 663 transitions. [2023-02-16 04:32:11,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 439 to 437. [2023-02-16 04:32:11,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 437 states, 296 states have (on average 1.114864864864865) internal successors, (330), 295 states have internal predecessors, (330), 111 states have call successors, (111), 19 states have call predecessors, (111), 30 states have return successors, (220), 122 states have call predecessors, (220), 110 states have call successors, (220) [2023-02-16 04:32:11,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 437 states to 437 states and 661 transitions. [2023-02-16 04:32:11,726 INFO L240 hiAutomatonCegarLoop]: Abstraction has 437 states and 661 transitions. [2023-02-16 04:32:11,726 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-02-16 04:32:11,727 INFO L428 stractBuchiCegarLoop]: Abstraction has 437 states and 661 transitions. [2023-02-16 04:32:11,727 INFO L335 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2023-02-16 04:32:11,727 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 437 states and 661 transitions. [2023-02-16 04:32:11,730 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2023-02-16 04:32:11,730 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:11,730 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:11,730 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:11,730 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2023-02-16 04:32:11,730 INFO L748 eck$LassoCheckResult]: Stem: 7006#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 6942#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; 6943#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 6969#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; 6956#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 6958#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7045#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; 7019#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 7031#$Ultimate##0 ~n := #in~n; 7034#L25 assume !(~n <= 0); 7035#L26 call #t~ret0 := fact(~n - 1);< 6954#$Ultimate##0 [2023-02-16 04:32:11,730 INFO L750 eck$LassoCheckResult]: Loop: 6954#$Ultimate##0 ~n := #in~n; 7065#L25 assume !(~n <= 0); 7049#L26 call #t~ret0 := fact(~n - 1);< 6954#$Ultimate##0 [2023-02-16 04:32:11,731 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:11,731 INFO L85 PathProgramCache]: Analyzing trace with hash 271623377, now seen corresponding path program 1 times [2023-02-16 04:32:11,731 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:11,731 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1764470602] [2023-02-16 04:32:11,731 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:11,731 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:11,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:11,788 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:32:11,788 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:11,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1764470602] [2023-02-16 04:32:11,788 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1764470602] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:32:11,788 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:32:11,788 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-02-16 04:32:11,789 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1344729651] [2023-02-16 04:32:11,789 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:32:11,789 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:32:11,789 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:11,789 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 1 times [2023-02-16 04:32:11,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:11,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1195930823] [2023-02-16 04:32:11,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:11,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:11,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:11,792 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:11,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:11,793 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:11,812 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:11,812 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:11,812 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:11,812 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:11,812 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:32:11,812 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,812 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:11,812 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:11,812 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2023-02-16 04:32:11,812 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:11,812 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:11,812 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,814 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,818 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,827 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,844 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:11,844 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:32:11,844 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,844 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,845 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) [2023-02-16 04:32:11,847 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 [2023-02-16 04:32:11,848 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:11,848 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:11,856 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:11,856 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2023-02-16 04:32:11,859 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 [2023-02-16 04:32:11,859 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,860 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) [2023-02-16 04:32:11,861 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 [2023-02-16 04:32:11,863 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:11,863 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:11,872 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Ended with exit code 0 [2023-02-16 04:32:11,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,873 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,874 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) [2023-02-16 04:32:11,875 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 [2023-02-16 04:32:11,876 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:11,876 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:11,923 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:11,926 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 [2023-02-16 04:32:11,927 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:11,927 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:11,927 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:11,927 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:11,927 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:11,927 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,927 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:11,927 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:11,927 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2023-02-16 04:32:11,927 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:11,927 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:11,927 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,929 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,933 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,934 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:11,949 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:11,950 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:11,950 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,950 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,951 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) [2023-02-16 04:32:11,953 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 [2023-02-16 04:32:11,955 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 [2023-02-16 04:32:11,961 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:11,961 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:11,961 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:11,961 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:11,961 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:11,961 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:11,961 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:11,962 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:11,965 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 [2023-02-16 04:32:11,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,966 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,966 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) [2023-02-16 04:32:11,968 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 [2023-02-16 04:32:11,969 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 [2023-02-16 04:32:11,975 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:11,976 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:11,976 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:11,976 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:11,976 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:11,976 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:11,976 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:11,979 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:32:11,980 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2023-02-16 04:32:11,980 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2023-02-16 04:32:11,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:11,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:11,981 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) [2023-02-16 04:32:11,983 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 [2023-02-16 04:32:11,984 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:32:11,985 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:32:11,985 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:32:11,985 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2023-02-16 04:32:11,987 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 [2023-02-16 04:32:11,988 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:32:11,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:12,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:12,012 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:32:12,012 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:12,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:12,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2023-02-16 04:32:12,035 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:12,060 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:32:12,061 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2023-02-16 04:32:12,061 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 437 states and 661 transitions. cyclomatic complexity: 234 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) [2023-02-16 04:32:12,106 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 437 states and 661 transitions. cyclomatic complexity: 234. 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 498 states and 738 transitions. Complement of second has 13 states. [2023-02-16 04:32:12,107 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 [2023-02-16 04:32:12,107 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) [2023-02-16 04:32:12,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 28 transitions. [2023-02-16 04:32:12,108 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 28 transitions. Stem has 11 letters. Loop has 3 letters. [2023-02-16 04:32:12,108 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:12,108 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 28 transitions. Stem has 14 letters. Loop has 3 letters. [2023-02-16 04:32:12,108 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:12,108 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 28 transitions. Stem has 11 letters. Loop has 6 letters. [2023-02-16 04:32:12,109 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:12,109 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 498 states and 738 transitions. [2023-02-16 04:32:12,114 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2023-02-16 04:32:12,119 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 498 states to 483 states and 716 transitions. [2023-02-16 04:32:12,120 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 188 [2023-02-16 04:32:12,120 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 190 [2023-02-16 04:32:12,120 INFO L73 IsDeterministic]: Start isDeterministic. Operand 483 states and 716 transitions. [2023-02-16 04:32:12,120 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:12,120 INFO L218 hiAutomatonCegarLoop]: Abstraction has 483 states and 716 transitions. [2023-02-16 04:32:12,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 483 states and 716 transitions. [2023-02-16 04:32:12,131 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 483 to 479. [2023-02-16 04:32:12,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 479 states, 326 states have (on average 1.1196319018404908) internal successors, (365), 327 states have internal predecessors, (365), 115 states have call successors, (115), 29 states have call predecessors, (115), 38 states have return successors, (228), 122 states have call predecessors, (228), 114 states have call successors, (228) [2023-02-16 04:32:12,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 479 states to 479 states and 708 transitions. [2023-02-16 04:32:12,135 INFO L240 hiAutomatonCegarLoop]: Abstraction has 479 states and 708 transitions. [2023-02-16 04:32:12,135 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:12,136 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-02-16 04:32:12,136 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-02-16 04:32:12,136 INFO L87 Difference]: Start difference. First operand 479 states and 708 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) [2023-02-16 04:32:12,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:12,191 INFO L93 Difference]: Finished difference Result 482 states and 710 transitions. [2023-02-16 04:32:12,191 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 482 states and 710 transitions. [2023-02-16 04:32:12,196 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2023-02-16 04:32:12,201 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 482 states to 474 states and 700 transitions. [2023-02-16 04:32:12,202 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 184 [2023-02-16 04:32:12,202 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 184 [2023-02-16 04:32:12,202 INFO L73 IsDeterministic]: Start isDeterministic. Operand 474 states and 700 transitions. [2023-02-16 04:32:12,202 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:12,202 INFO L218 hiAutomatonCegarLoop]: Abstraction has 474 states and 700 transitions. [2023-02-16 04:32:12,203 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 474 states and 700 transitions. [2023-02-16 04:32:12,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 474 to 473. [2023-02-16 04:32:12,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 473 states, 321 states have (on average 1.118380062305296) internal successors, (359), 322 states have internal predecessors, (359), 114 states have call successors, (114), 29 states have call predecessors, (114), 38 states have return successors, (226), 121 states have call predecessors, (226), 114 states have call successors, (226) [2023-02-16 04:32:12,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 473 states to 473 states and 699 transitions. [2023-02-16 04:32:12,216 INFO L240 hiAutomatonCegarLoop]: Abstraction has 473 states and 699 transitions. [2023-02-16 04:32:12,217 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-02-16 04:32:12,217 INFO L428 stractBuchiCegarLoop]: Abstraction has 473 states and 699 transitions. [2023-02-16 04:32:12,217 INFO L335 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2023-02-16 04:32:12,218 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 473 states and 699 transitions. [2023-02-16 04:32:12,220 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2023-02-16 04:32:12,220 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:12,220 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:12,221 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:12,222 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:12,222 INFO L748 eck$LassoCheckResult]: Stem: 8950#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 8876#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; 8877#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 8902#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; 8889#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 8891#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9039#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; 9029#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9030#$Ultimate##0 ~n := #in~n; 9036#L25 assume ~n <= 0;#res := 1; 9034#factFINAL assume true; 9028#factEXIT >#68#return; 8882#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9023#$Ultimate##0 ~n := #in~n; 9024#L25 assume ~n <= 0;#res := 1; 9040#factFINAL assume true; 9031#factEXIT >#70#return; 8883#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9023#$Ultimate##0 ~n := #in~n; 9024#L25 assume ~n <= 0;#res := 1; 9040#factFINAL assume true; 9031#factEXIT >#72#return; 9032#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; 9038#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 9037#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9035#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9033#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; 8884#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9027#$Ultimate##0 ~n := #in~n; 9021#L25 assume !(~n <= 0); 8862#L26 call #t~ret0 := fact(~n - 1);< 8885#$Ultimate##0 ~n := #in~n; 8942#L25 assume ~n <= 0;#res := 1; 8874#factFINAL assume true; 8861#factEXIT >#66#return; 8863#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 8922#factFINAL assume true; 9051#factEXIT >#74#return; 8911#L30-6 [2023-02-16 04:32:12,222 INFO L750 eck$LassoCheckResult]: Loop: 8911#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 8945#$Ultimate##0 ~n := #in~n; 9081#L25 assume !(~n <= 0); 8995#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume ~n <= 0;#res := 1; 9004#factFINAL assume true; 8994#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 9010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9058#factFINAL assume true; 9059#factEXIT >#76#return; 8912#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 8858#$Ultimate##0 ~n := #in~n; 8946#L25 assume !(~n <= 0); 8995#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume ~n <= 0;#res := 1; 9004#factFINAL assume true; 8994#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 9010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9058#factFINAL assume true; 9059#factEXIT >#78#return; 9053#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; 9092#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 9086#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9084#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 8906#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; 8907#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 8858#$Ultimate##0 ~n := #in~n; 8946#L25 assume !(~n <= 0); 8995#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume !(~n <= 0); 8997#L26 call #t~ret0 := fact(~n - 1);< 9000#$Ultimate##0 ~n := #in~n; 9006#L25 assume ~n <= 0;#res := 1; 9004#factFINAL assume true; 8994#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 8999#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9011#factFINAL assume true; 9007#factEXIT >#66#return; 9010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9058#factFINAL assume true; 9059#factEXIT >#74#return; 8911#L30-6 [2023-02-16 04:32:12,222 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:12,222 INFO L85 PathProgramCache]: Analyzing trace with hash -426322681, now seen corresponding path program 1 times [2023-02-16 04:32:12,223 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:12,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1856428987] [2023-02-16 04:32:12,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,223 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:12,228 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:12,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [415692255] [2023-02-16 04:32:12,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:12,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:12,230 INFO L229 MonitoredProcess]: Starting monitored process 115 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:12,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (115)] Waiting until timeout for monitored process [2023-02-16 04:32:12,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:12,290 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:12,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:12,312 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:12,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:12,314 INFO L85 PathProgramCache]: Analyzing trace with hash 1132769532, now seen corresponding path program 1 times [2023-02-16 04:32:12,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:12,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1729354389] [2023-02-16 04:32:12,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:12,321 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:12,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [341712399] [2023-02-16 04:32:12,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,322 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:12,322 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:12,329 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) [2023-02-16 04:32:12,347 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (116)] Waiting until timeout for monitored process [2023-02-16 04:32:12,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:12,381 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:12,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:12,413 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:12,413 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:12,413 INFO L85 PathProgramCache]: Analyzing trace with hash -700299646, now seen corresponding path program 1 times [2023-02-16 04:32:12,413 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:12,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [186074709] [2023-02-16 04:32:12,414 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,414 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:12,423 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:12,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [625971670] [2023-02-16 04:32:12,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:12,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:12,425 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:12,428 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) [2023-02-16 04:32:12,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (117)] Waiting until timeout for monitored process [2023-02-16 04:32:12,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:12,495 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:32:12,496 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:12,532 INFO L134 CoverageAnalysis]: Checked inductivity of 642 backedges. 367 proven. 5 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2023-02-16 04:32:12,532 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:12,649 INFO L134 CoverageAnalysis]: Checked inductivity of 642 backedges. 31 proven. 41 refuted. 0 times theorem prover too weak. 570 trivial. 0 not checked. [2023-02-16 04:32:12,650 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:12,650 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [186074709] [2023-02-16 04:32:12,650 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:12,650 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [625971670] [2023-02-16 04:32:12,650 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [625971670] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:12,650 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:12,650 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2023-02-16 04:32:12,650 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1155817055] [2023-02-16 04:32:12,651 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:12,871 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:14,862 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:14,862 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:14,863 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:14,863 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:14,863 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:32:14,863 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:14,863 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:14,863 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:14,863 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2023-02-16 04:32:14,863 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:14,863 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:14,864 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:14,867 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:14,898 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:14,900 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:14,901 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:14,903 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,001 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:15,002 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:32:15,003 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,004 INFO L229 MonitoredProcess]: Starting monitored process 118 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) [2023-02-16 04:32:15,005 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (118)] Waiting until timeout for monitored process [2023-02-16 04:32:15,007 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:15,007 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:15,013 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:15,014 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: [] [2023-02-16 04:32:15,016 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (118)] Ended with exit code 0 [2023-02-16 04:32:15,016 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,017 INFO L229 MonitoredProcess]: Starting monitored process 119 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) [2023-02-16 04:32:15,018 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Waiting until timeout for monitored process [2023-02-16 04:32:15,020 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:15,020 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:15,030 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:15,030 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,035 INFO L229 MonitoredProcess]: Starting monitored process 120 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) [2023-02-16 04:32:15,037 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Waiting until timeout for monitored process [2023-02-16 04:32:15,039 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:15,039 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:15,051 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:15,054 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Ended with exit code 0 [2023-02-16 04:32:15,054 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:15,054 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:15,054 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:15,054 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:15,054 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:15,054 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,054 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:15,054 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:15,054 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2023-02-16 04:32:15,054 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:15,055 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:15,055 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,058 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,084 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,086 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,087 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,097 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:15,191 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:15,191 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:15,191 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,191 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,192 INFO L229 MonitoredProcess]: Starting monitored process 121 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) [2023-02-16 04:32:15,194 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (121)] Waiting until timeout for monitored process [2023-02-16 04:32:15,195 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 [2023-02-16 04:32:15,200 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:15,200 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:15,201 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:15,201 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:15,201 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:15,201 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:15,201 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:15,202 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:15,204 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (121)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:15,204 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,204 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,205 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) [2023-02-16 04:32:15,207 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 [2023-02-16 04:32:15,208 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 [2023-02-16 04:32:15,214 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:15,214 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:15,214 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:15,214 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:15,214 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:15,216 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:15,216 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:15,219 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:32:15,222 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2023-02-16 04:32:15,222 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2023-02-16 04:32:15,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:15,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,224 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) [2023-02-16 04:32:15,225 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 [2023-02-16 04:32:15,226 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:32:15,226 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:32:15,226 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:32:15,226 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 [] [2023-02-16 04:32:15,228 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 [2023-02-16 04:32:15,228 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:32:15,238 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:15,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:15,278 INFO L263 TraceCheckSpWp]: Trace formula consists of 240 conjuncts, 12 conjunts are in the unsatisfiable core [2023-02-16 04:32:15,279 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:15,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:15,505 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 [2023-02-16 04:32:15,509 INFO L263 TraceCheckSpWp]: Trace formula consists of 497 conjuncts, 28 conjunts are in the unsatisfiable core [2023-02-16 04:32:15,511 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:15,643 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 336 trivial. 0 not checked. [2023-02-16 04:32:15,644 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 4 loop predicates [2023-02-16 04:32:15,644 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 473 states and 699 transitions. cyclomatic complexity: 238 Second operand has 7 states, 6 states have (on average 4.333333333333333) internal successors, (26), 6 states have internal predecessors, (26), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 5 states have call predecessors, (9), 6 states have call successors, (9) [2023-02-16 04:32:15,739 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 473 states and 699 transitions. cyclomatic complexity: 238. Second operand has 7 states, 6 states have (on average 4.333333333333333) internal successors, (26), 6 states have internal predecessors, (26), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 5 states have call predecessors, (9), 6 states have call successors, (9) Result 639 states and 891 transitions. Complement of second has 15 states. [2023-02-16 04:32:15,741 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2023-02-16 04:32:15,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 4.333333333333333) internal successors, (26), 6 states have internal predecessors, (26), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 5 states have call predecessors, (9), 6 states have call successors, (9) [2023-02-16 04:32:15,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2023-02-16 04:32:15,742 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 38 letters. Loop has 74 letters. [2023-02-16 04:32:15,745 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:15,746 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 112 letters. Loop has 74 letters. [2023-02-16 04:32:15,746 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:15,746 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 38 letters. Loop has 148 letters. [2023-02-16 04:32:15,748 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:15,748 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 639 states and 891 transitions. [2023-02-16 04:32:15,757 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 78 [2023-02-16 04:32:15,763 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 639 states to 633 states and 884 transitions. [2023-02-16 04:32:15,763 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 219 [2023-02-16 04:32:15,764 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 221 [2023-02-16 04:32:15,764 INFO L73 IsDeterministic]: Start isDeterministic. Operand 633 states and 884 transitions. [2023-02-16 04:32:15,764 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:15,764 INFO L218 hiAutomatonCegarLoop]: Abstraction has 633 states and 884 transitions. [2023-02-16 04:32:15,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 633 states and 884 transitions. [2023-02-16 04:32:15,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 633 to 603. [2023-02-16 04:32:15,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 603 states, 404 states have (on average 1.1262376237623761) internal successors, (455), 409 states have internal predecessors, (455), 134 states have call successors, (136), 45 states have call predecessors, (136), 65 states have return successors, (261), 148 states have call predecessors, (261), 133 states have call successors, (261) [2023-02-16 04:32:15,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 603 states to 603 states and 852 transitions. [2023-02-16 04:32:15,782 INFO L240 hiAutomatonCegarLoop]: Abstraction has 603 states and 852 transitions. [2023-02-16 04:32:15,782 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:15,783 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-02-16 04:32:15,783 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2023-02-16 04:32:15,783 INFO L87 Difference]: Start difference. First operand 603 states and 852 transitions. Second operand has 7 states, 6 states have (on average 5.333333333333333) internal successors, (32), 7 states have internal predecessors, (32), 5 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2023-02-16 04:32:15,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:15,886 INFO L93 Difference]: Finished difference Result 621 states and 860 transitions. [2023-02-16 04:32:15,886 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 621 states and 860 transitions. [2023-02-16 04:32:15,897 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 78 [2023-02-16 04:32:15,902 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 621 states to 603 states and 835 transitions. [2023-02-16 04:32:15,903 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 212 [2023-02-16 04:32:15,903 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 212 [2023-02-16 04:32:15,903 INFO L73 IsDeterministic]: Start isDeterministic. Operand 603 states and 835 transitions. [2023-02-16 04:32:15,903 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:15,903 INFO L218 hiAutomatonCegarLoop]: Abstraction has 603 states and 835 transitions. [2023-02-16 04:32:15,904 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 603 states and 835 transitions. [2023-02-16 04:32:15,915 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 603 to 595. [2023-02-16 04:32:15,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 595 states, 399 states have (on average 1.1203007518796992) internal successors, (447), 406 states have internal predecessors, (447), 131 states have call successors, (133), 45 states have call predecessors, (133), 65 states have return successors, (245), 143 states have call predecessors, (245), 129 states have call successors, (245) [2023-02-16 04:32:15,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 595 states to 595 states and 825 transitions. [2023-02-16 04:32:15,919 INFO L240 hiAutomatonCegarLoop]: Abstraction has 595 states and 825 transitions. [2023-02-16 04:32:15,920 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-02-16 04:32:15,921 INFO L428 stractBuchiCegarLoop]: Abstraction has 595 states and 825 transitions. [2023-02-16 04:32:15,921 INFO L335 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2023-02-16 04:32:15,921 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 595 states and 825 transitions. [2023-02-16 04:32:15,924 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 78 [2023-02-16 04:32:15,924 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:15,924 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:15,925 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:15,925 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2023-02-16 04:32:15,925 INFO L748 eck$LassoCheckResult]: Stem: 12332#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 12276#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; 12277#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 12299#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; 12286#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 12288#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12466#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; 12257#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 12258#$Ultimate##0 ~n := #in~n; 12481#L25 assume ~n <= 0;#res := 1; 12478#factFINAL assume true; 12474#factEXIT >#68#return; 12321#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 12254#$Ultimate##0 ~n := #in~n; 12470#L25 assume ~n <= 0;#res := 1; 12469#factFINAL assume true; 12467#factEXIT >#70#return; 12253#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 12254#$Ultimate##0 ~n := #in~n; 12470#L25 assume ~n <= 0;#res := 1; 12469#factFINAL assume true; 12467#factEXIT >#72#return; 12468#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; 12483#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 12480#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 12477#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12473#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; 12461#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 12496#$Ultimate##0 ~n := #in~n; 12508#L25 assume !(~n <= 0); 12262#L26 call #t~ret0 := fact(~n - 1);< 12323#$Ultimate##0 ~n := #in~n; 12316#L25 assume ~n <= 0;#res := 1; 12317#factFINAL assume true; 12503#factEXIT >#66#return; 12501#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12460#factFINAL assume true; 12462#factEXIT >#74#return; 12283#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 12492#$Ultimate##0 ~n := #in~n; 12433#L25 assume !(~n <= 0); 12282#L26 call #t~ret0 := fact(~n - 1);< 12284#$Ultimate##0 [2023-02-16 04:32:15,925 INFO L750 eck$LassoCheckResult]: Loop: 12284#$Ultimate##0 ~n := #in~n; 12512#L25 assume !(~n <= 0); 12506#L26 call #t~ret0 := fact(~n - 1);< 12284#$Ultimate##0 [2023-02-16 04:32:15,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:15,926 INFO L85 PathProgramCache]: Analyzing trace with hash 1705579033, now seen corresponding path program 1 times [2023-02-16 04:32:15,926 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:15,926 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [182432504] [2023-02-16 04:32:15,926 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:15,926 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:15,934 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:15,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [969890360] [2023-02-16 04:32:15,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:15,934 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:15,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:15,936 INFO L229 MonitoredProcess]: Starting monitored process 124 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:15,938 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (124)] Waiting until timeout for monitored process [2023-02-16 04:32:15,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:15,977 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 6 conjunts are in the unsatisfiable core [2023-02-16 04:32:15,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:16,009 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2023-02-16 04:32:16,009 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-02-16 04:32:16,009 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:16,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [182432504] [2023-02-16 04:32:16,010 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:16,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [969890360] [2023-02-16 04:32:16,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [969890360] provided 1 perfect and 0 imperfect interpolant sequences [2023-02-16 04:32:16,010 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-02-16 04:32:16,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-02-16 04:32:16,010 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [729189074] [2023-02-16 04:32:16,010 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-02-16 04:32:16,011 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:32:16,011 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:16,011 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 2 times [2023-02-16 04:32:16,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:16,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [311472834] [2023-02-16 04:32:16,011 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:16,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:16,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:16,014 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:16,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:16,015 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:16,034 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:16,034 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:16,034 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:16,034 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:16,035 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:32:16,035 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,035 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:16,035 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:16,035 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2023-02-16 04:32:16,035 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:16,035 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:16,036 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,037 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,039 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,043 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,058 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:16,058 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:32:16,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,060 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) [2023-02-16 04:32:16,069 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:16,069 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:16,078 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 [2023-02-16 04:32:16,089 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:16,089 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2023-02-16 04:32:16,092 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 [2023-02-16 04:32:16,092 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,094 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) [2023-02-16 04:32:16,096 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 [2023-02-16 04:32:16,097 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:16,097 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:16,121 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:32:16,121 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#t~ret0=0} Honda state: {fact_#t~ret0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2023-02-16 04:32:16,124 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:16,124 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,125 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,126 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) [2023-02-16 04:32:16,128 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 [2023-02-16 04:32:16,129 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:32:16,129 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:16,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:16,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,152 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) [2023-02-16 04:32:16,157 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:32:16,157 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:32:16,172 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 [2023-02-16 04:32:16,182 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:32:16,185 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 [2023-02-16 04:32:16,186 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:32:16,186 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:32:16,186 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:32:16,186 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:32:16,186 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:32:16,186 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,186 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:32:16,186 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:32:16,186 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2023-02-16 04:32:16,186 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:32:16,186 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:32:16,187 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,188 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,190 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,194 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:32:16,210 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:32:16,210 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:32:16,211 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,211 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,212 INFO L229 MonitoredProcess]: Starting monitored process 129 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) [2023-02-16 04:32:16,217 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 [2023-02-16 04:32:16,224 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:16,224 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:16,224 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:16,224 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:16,224 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:16,224 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:16,224 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:16,227 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (129)] Waiting until timeout for monitored process [2023-02-16 04:32:16,236 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:16,240 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (129)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:16,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,241 INFO L229 MonitoredProcess]: Starting monitored process 130 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) [2023-02-16 04:32:16,253 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 [2023-02-16 04:32:16,260 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:16,260 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:16,260 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:16,260 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:16,260 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:16,261 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:16,261 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:16,261 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (130)] Waiting until timeout for monitored process [2023-02-16 04:32:16,262 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:32:16,264 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (130)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:16,264 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,265 INFO L229 MonitoredProcess]: Starting monitored process 131 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) [2023-02-16 04:32:16,267 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (131)] Waiting until timeout for monitored process [2023-02-16 04:32:16,268 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 [2023-02-16 04:32:16,273 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:32:16,273 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:32:16,273 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:32:16,274 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:32:16,274 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:32:16,274 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:32:16,274 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:32:16,275 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:32:16,277 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2023-02-16 04:32:16,277 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2023-02-16 04:32:16,277 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:32:16,277 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:16,279 INFO L229 MonitoredProcess]: Starting monitored process 132 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) [2023-02-16 04:32:16,280 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (132)] Waiting until timeout for monitored process [2023-02-16 04:32:16,281 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:32:16,281 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:32:16,281 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:32:16,281 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2023-02-16 04:32:16,283 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (131)] Ended with exit code 0 [2023-02-16 04:32:16,284 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:32:16,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:16,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:16,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 16 conjunts are in the unsatisfiable core [2023-02-16 04:32:16,351 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:16,488 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (132)] Forceful destruction successful, exit code 0 [2023-02-16 04:32:16,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:16,512 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2023-02-16 04:32:16,513 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:16,530 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:32:16,531 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2023-02-16 04:32:16,531 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:16,595 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246. 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 619 states and 853 transitions. Complement of second has 13 states. [2023-02-16 04:32:16,596 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 [2023-02-16 04:32:16,596 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:16,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 28 transitions. [2023-02-16 04:32:16,597 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 28 transitions. Stem has 42 letters. Loop has 3 letters. [2023-02-16 04:32:16,597 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:16,597 INFO L681 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2023-02-16 04:32:16,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:16,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:16,651 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 16 conjunts are in the unsatisfiable core [2023-02-16 04:32:16,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:16,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:16,800 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2023-02-16 04:32:16,800 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:16,817 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:32:16,817 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 3 loop predicates [2023-02-16 04:32:16,818 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:16,879 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246. 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 619 states and 853 transitions. Complement of second has 13 states. [2023-02-16 04:32:16,880 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 [2023-02-16 04:32:16,880 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:16,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 28 transitions. [2023-02-16 04:32:16,881 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 28 transitions. Stem has 42 letters. Loop has 3 letters. [2023-02-16 04:32:16,881 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:16,881 INFO L681 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2023-02-16 04:32:16,889 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:16,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:16,941 INFO L263 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 16 conjunts are in the unsatisfiable core [2023-02-16 04:32:16,942 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:17,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:17,088 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2023-02-16 04:32:17,089 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:17,106 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-02-16 04:32:17,107 INFO L141 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 [2023-02-16 04:32:17,107 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:17,192 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 595 states and 825 transitions. cyclomatic complexity: 246. 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 737 states and 985 transitions. Complement of second has 16 states. [2023-02-16 04:32:17,193 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 [2023-02-16 04:32:17,194 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, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2023-02-16 04:32:17,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2023-02-16 04:32:17,194 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 42 letters. Loop has 3 letters. [2023-02-16 04:32:17,194 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:17,194 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 45 letters. Loop has 3 letters. [2023-02-16 04:32:17,195 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:17,195 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 42 letters. Loop has 6 letters. [2023-02-16 04:32:17,195 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:32:17,195 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 737 states and 985 transitions. [2023-02-16 04:32:17,201 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 72 [2023-02-16 04:32:17,206 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 737 states to 534 states and 759 transitions. [2023-02-16 04:32:17,206 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 147 [2023-02-16 04:32:17,207 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 149 [2023-02-16 04:32:17,207 INFO L73 IsDeterministic]: Start isDeterministic. Operand 534 states and 759 transitions. [2023-02-16 04:32:17,207 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:17,207 INFO L218 hiAutomatonCegarLoop]: Abstraction has 534 states and 759 transitions. [2023-02-16 04:32:17,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 534 states and 759 transitions. [2023-02-16 04:32:17,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 534 to 522. [2023-02-16 04:32:17,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 522 states, 356 states have (on average 1.1207865168539326) internal successors, (399), 357 states have internal predecessors, (399), 113 states have call successors, (114), 37 states have call predecessors, (114), 53 states have return successors, (222), 127 states have call predecessors, (222), 113 states have call successors, (222) [2023-02-16 04:32:17,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 522 states to 522 states and 735 transitions. [2023-02-16 04:32:17,222 INFO L240 hiAutomatonCegarLoop]: Abstraction has 522 states and 735 transitions. [2023-02-16 04:32:17,222 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:17,223 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-02-16 04:32:17,223 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-02-16 04:32:17,223 INFO L87 Difference]: Start difference. First operand 522 states and 735 transitions. Second operand has 6 states, 4 states have (on average 4.5) internal successors, (18), 5 states have internal predecessors, (18), 4 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2023-02-16 04:32:17,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:17,282 INFO L93 Difference]: Finished difference Result 534 states and 746 transitions. [2023-02-16 04:32:17,282 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 534 states and 746 transitions. [2023-02-16 04:32:17,286 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 72 [2023-02-16 04:32:17,291 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 534 states to 534 states and 746 transitions. [2023-02-16 04:32:17,291 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 152 [2023-02-16 04:32:17,291 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 152 [2023-02-16 04:32:17,291 INFO L73 IsDeterministic]: Start isDeterministic. Operand 534 states and 746 transitions. [2023-02-16 04:32:17,291 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:17,291 INFO L218 hiAutomatonCegarLoop]: Abstraction has 534 states and 746 transitions. [2023-02-16 04:32:17,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 534 states and 746 transitions. [2023-02-16 04:32:17,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 534 to 526. [2023-02-16 04:32:17,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 526 states, 359 states have (on average 1.1142061281337048) internal successors, (400), 360 states have internal predecessors, (400), 113 states have call successors, (114), 38 states have call predecessors, (114), 54 states have return successors, (222), 127 states have call predecessors, (222), 113 states have call successors, (222) [2023-02-16 04:32:17,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 526 states to 526 states and 736 transitions. [2023-02-16 04:32:17,306 INFO L240 hiAutomatonCegarLoop]: Abstraction has 526 states and 736 transitions. [2023-02-16 04:32:17,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2023-02-16 04:32:17,307 INFO L428 stractBuchiCegarLoop]: Abstraction has 526 states and 736 transitions. [2023-02-16 04:32:17,307 INFO L335 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2023-02-16 04:32:17,307 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 526 states and 736 transitions. [2023-02-16 04:32:17,310 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 72 [2023-02-16 04:32:17,310 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:17,310 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:17,311 INFO L148 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] [2023-02-16 04:32:17,311 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [23, 23, 14, 14, 14, 14, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:17,311 INFO L748 eck$LassoCheckResult]: Stem: 16566#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 16510#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; 16511#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 16531#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; 16519#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 16520#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 16967#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; 16494#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 16495#$Ultimate##0 ~n := #in~n; 16973#L25 assume ~n <= 0;#res := 1; 16972#factFINAL assume true; 16861#factEXIT >#68#return; 16548#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 16549#$Ultimate##0 ~n := #in~n; 16865#L25 assume ~n <= 0;#res := 1; 16863#factFINAL assume true; 16851#factEXIT >#70#return; 16485#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 16486#$Ultimate##0 ~n := #in~n; 16962#L25 assume ~n <= 0;#res := 1; 16959#factFINAL assume true; 16928#factEXIT >#72#return; 16915#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; 16914#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 16913#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 16911#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 16909#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; 16858#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 16859#$Ultimate##0 ~n := #in~n; 16894#L25 assume !(~n <= 0); 16508#L26 call #t~ret0 := fact(~n - 1);< 16558#$Ultimate##0 ~n := #in~n; 16546#L25 assume ~n <= 0;#res := 1; 16507#factFINAL assume true; 16509#factEXIT >#66#return; 16892#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16886#factFINAL assume true; 16857#factEXIT >#74#return; 16847#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 16855#$Ultimate##0 ~n := #in~n; 16897#L25 assume ~n <= 0;#res := 1; 16896#factFINAL assume true; 16853#factEXIT >#76#return; 16567#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 16568#$Ultimate##0 ~n := #in~n; 16893#L25 assume !(~n <= 0); 16888#L26 call #t~ret0 := fact(~n - 1);< 16891#$Ultimate##0 ~n := #in~n; 16901#L25 assume ~n <= 0;#res := 1; 16963#factFINAL assume true; 16961#factEXIT >#66#return; 16958#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16927#factFINAL assume true; 16840#factEXIT >#78#return; 16842#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; 16984#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 16983#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 16769#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 16525#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 16526#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 16658#L42-3 [2023-02-16 04:32:17,312 INFO L750 eck$LassoCheckResult]: Loop: 16658#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 16607#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; 16575#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 16591#$Ultimate##0 ~n := #in~n; 16605#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#68#return; 16576#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 16591#$Ultimate##0 ~n := #in~n; 16605#L25 assume ~n <= 0;#res := 1; 16601#factFINAL assume true; 16589#factEXIT >#70#return; 16579#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 16480#$Ultimate##0 ~n := #in~n; 16616#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#72#return; 16587#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; 16620#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 16618#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 16615#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 16610#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; 16578#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 16480#$Ultimate##0 ~n := #in~n; 16616#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#68#return; 16583#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 16591#$Ultimate##0 ~n := #in~n; 16605#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#70#return; 16584#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 16591#$Ultimate##0 ~n := #in~n; 16605#L25 assume ~n <= 0;#res := 1; 16601#factFINAL assume true; 16589#factEXIT >#72#return; 16590#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; 16604#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 16603#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 16602#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 16570#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; 16479#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 16480#$Ultimate##0 ~n := #in~n; 16616#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#74#return; 16580#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 16591#$Ultimate##0 ~n := #in~n; 16605#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#76#return; 16582#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 16480#$Ultimate##0 ~n := #in~n; 16616#L25 assume !(~n <= 0); 16606#L26 call #t~ret0 := fact(~n - 1);< 16517#$Ultimate##0 ~n := #in~n; 16624#L25 assume !(~n <= 0); 16488#L26 call #t~ret0 := fact(~n - 1);< 16636#$Ultimate##0 ~n := #in~n; 16544#L25 assume ~n <= 0;#res := 1; 16545#factFINAL assume true; 16487#factEXIT >#66#return; 16489#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16635#factFINAL assume true; 16632#factEXIT >#66#return; 16631#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 16599#factFINAL assume true; 16600#factEXIT >#78#return; 16573#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; 16572#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 16571#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 16569#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 16523#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 16524#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 16658#L42-3 [2023-02-16 04:32:17,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:17,312 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 2 times [2023-02-16 04:32:17,313 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:17,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [381511502] [2023-02-16 04:32:17,313 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:17,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:17,318 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:17,318 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [46296728] [2023-02-16 04:32:17,318 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:17,318 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:17,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:17,320 INFO L229 MonitoredProcess]: Starting monitored process 133 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:17,337 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (133)] Waiting until timeout for monitored process [2023-02-16 04:32:17,385 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:17,385 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:17,385 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:17,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:17,415 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:17,415 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:17,416 INFO L85 PathProgramCache]: Analyzing trace with hash 472305299, now seen corresponding path program 4 times [2023-02-16 04:32:17,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:17,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [836195291] [2023-02-16 04:32:17,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:17,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:17,423 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:17,423 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2127570469] [2023-02-16 04:32:17,423 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:32:17,423 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:17,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:17,425 INFO L229 MonitoredProcess]: Starting monitored process 134 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:17,428 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (134)] Waiting until timeout for monitored process [2023-02-16 04:32:17,500 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:32:17,500 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:17,501 INFO L263 TraceCheckSpWp]: Trace formula consists of 329 conjuncts, 13 conjunts are in the unsatisfiable core [2023-02-16 04:32:17,504 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:17,581 INFO L134 CoverageAnalysis]: Checked inductivity of 1211 backedges. 723 proven. 32 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2023-02-16 04:32:17,581 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:17,881 INFO L134 CoverageAnalysis]: Checked inductivity of 1211 backedges. 107 proven. 147 refuted. 0 times theorem prover too weak. 957 trivial. 0 not checked. [2023-02-16 04:32:17,881 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:17,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [836195291] [2023-02-16 04:32:17,882 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:17,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2127570469] [2023-02-16 04:32:17,882 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2127570469] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:17,882 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:17,882 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 15 [2023-02-16 04:32:17,882 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [490283578] [2023-02-16 04:32:17,882 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:17,883 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:17,883 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:17,883 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2023-02-16 04:32:17,884 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=172, Unknown=0, NotChecked=0, Total=210 [2023-02-16 04:32:17,884 INFO L87 Difference]: Start difference. First operand 526 states and 736 transitions. cyclomatic complexity: 222 Second operand has 15 states, 12 states have (on average 3.6666666666666665) internal successors, (44), 15 states have internal predecessors, (44), 9 states have call successors, (20), 2 states have call predecessors, (20), 5 states have return successors, (20), 8 states have call predecessors, (20), 9 states have call successors, (20) [2023-02-16 04:32:18,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:18,209 INFO L93 Difference]: Finished difference Result 773 states and 1091 transitions. [2023-02-16 04:32:18,209 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 773 states and 1091 transitions. [2023-02-16 04:32:18,216 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 145 [2023-02-16 04:32:18,222 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 773 states to 773 states and 1091 transitions. [2023-02-16 04:32:18,222 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 234 [2023-02-16 04:32:18,223 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 234 [2023-02-16 04:32:18,223 INFO L73 IsDeterministic]: Start isDeterministic. Operand 773 states and 1091 transitions. [2023-02-16 04:32:18,223 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:18,223 INFO L218 hiAutomatonCegarLoop]: Abstraction has 773 states and 1091 transitions. [2023-02-16 04:32:18,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 773 states and 1091 transitions. [2023-02-16 04:32:18,241 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 773 to 584. [2023-02-16 04:32:18,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 584 states, 399 states have (on average 1.1027568922305764) internal successors, (440), 400 states have internal predecessors, (440), 131 states have call successors, (132), 38 states have call predecessors, (132), 54 states have return successors, (250), 145 states have call predecessors, (250), 131 states have call successors, (250) [2023-02-16 04:32:18,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 584 states to 584 states and 822 transitions. [2023-02-16 04:32:18,245 INFO L240 hiAutomatonCegarLoop]: Abstraction has 584 states and 822 transitions. [2023-02-16 04:32:18,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2023-02-16 04:32:18,246 INFO L428 stractBuchiCegarLoop]: Abstraction has 584 states and 822 transitions. [2023-02-16 04:32:18,246 INFO L335 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2023-02-16 04:32:18,246 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 584 states and 822 transitions. [2023-02-16 04:32:18,249 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 93 [2023-02-16 04:32:18,249 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:18,249 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:18,252 INFO L148 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] [2023-02-16 04:32:18,252 INFO L149 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] [2023-02-16 04:32:18,253 INFO L748 eck$LassoCheckResult]: Stem: 18778#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 18728#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; 18729#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 18751#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; 18740#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 18741#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 19086#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; 18721#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18722#$Ultimate##0 ~n := #in~n; 19118#L25 assume ~n <= 0;#res := 1; 19116#factFINAL assume true; 19115#factEXIT >#68#return; 19113#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 19114#$Ultimate##0 ~n := #in~n; 19119#L25 assume ~n <= 0;#res := 1; 19117#factFINAL assume true; 19112#factEXIT >#70#return; 18695#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 18696#$Ultimate##0 ~n := #in~n; 19209#L25 assume ~n <= 0;#res := 1; 19205#factFINAL assume true; 19196#factEXIT >#72#return; 19188#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; 19178#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 19140#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 19141#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 19095#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; 19096#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 19160#$Ultimate##0 ~n := #in~n; 19245#L25 assume !(~n <= 0); 18725#L26 call #t~ret0 := fact(~n - 1);< 18772#$Ultimate##0 ~n := #in~n; 18773#L25 assume ~n <= 0;#res := 1; 19247#factFINAL assume true; 19230#factEXIT >#66#return; 19228#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 19227#factFINAL assume true; 19159#factEXIT >#74#return; 19155#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 19166#$Ultimate##0 ~n := #in~n; 19244#L25 assume ~n <= 0;#res := 1; 19243#factFINAL assume true; 19154#factEXIT >#76#return; 19144#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 19146#$Ultimate##0 ~n := #in~n; 19186#L25 assume !(~n <= 0); 19183#L26 call #t~ret0 := fact(~n - 1);< 19184#$Ultimate##0 ~n := #in~n; 19193#L25 assume ~n <= 0;#res := 1; 19191#factFINAL assume true; 19182#factEXIT >#66#return; 19181#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 19180#factFINAL assume true; 19143#factEXIT >#78#return; 19142#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; 19139#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 19098#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 18909#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 18749#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 18750#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 18840#L42-3 [2023-02-16 04:32:18,253 INFO L750 eck$LassoCheckResult]: Loop: 18840#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 18820#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; 18796#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18807#$Ultimate##0 ~n := #in~n; 18835#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18828#L25 assume !(~n <= 0); 18765#L26 call #t~ret0 := fact(~n - 1);< 18838#$Ultimate##0 ~n := #in~n; 18764#L25 assume ~n <= 0;#res := 1; 18766#factFINAL assume true; 18852#factEXIT >#66#return; 18819#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18837#factFINAL assume true; 18817#factEXIT >#66#return; 18809#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18805#factFINAL assume true; 18806#factEXIT >#68#return; 18786#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 18807#$Ultimate##0 ~n := #in~n; 18835#L25 assume ~n <= 0;#res := 1; 18834#factFINAL assume true; 18832#factEXIT >#70#return; 18792#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 18804#$Ultimate##0 ~n := #in~n; 18816#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18825#L25 assume ~n <= 0;#res := 1; 18822#factFINAL assume true; 18811#factEXIT >#66#return; 18810#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18808#factFINAL assume true; 18785#factEXIT >#72#return; 18803#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; 18831#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 18829#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 18826#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 18823#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; 18791#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18804#$Ultimate##0 ~n := #in~n; 18816#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18828#L25 assume !(~n <= 0); 18765#L26 call #t~ret0 := fact(~n - 1);< 18838#$Ultimate##0 ~n := #in~n; 18764#L25 assume ~n <= 0;#res := 1; 18766#factFINAL assume true; 18852#factEXIT >#66#return; 18819#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18837#factFINAL assume true; 18817#factEXIT >#66#return; 18809#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18805#factFINAL assume true; 18806#factEXIT >#68#return; 18788#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 18807#$Ultimate##0 ~n := #in~n; 18835#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18825#L25 assume ~n <= 0;#res := 1; 18822#factFINAL assume true; 18811#factEXIT >#66#return; 18810#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18808#factFINAL assume true; 18785#factEXIT >#70#return; 18795#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 18807#$Ultimate##0 ~n := #in~n; 18835#L25 assume ~n <= 0;#res := 1; 18834#factFINAL assume true; 18832#factEXIT >#72#return; 18833#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; 18844#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 18841#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 18839#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 18781#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; 18794#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18804#$Ultimate##0 ~n := #in~n; 18816#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18828#L25 assume !(~n <= 0); 18765#L26 call #t~ret0 := fact(~n - 1);< 18838#$Ultimate##0 ~n := #in~n; 18764#L25 assume ~n <= 0;#res := 1; 18766#factFINAL assume true; 18852#factEXIT >#66#return; 18819#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18837#factFINAL assume true; 18817#factEXIT >#66#return; 18809#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18805#factFINAL assume true; 18806#factEXIT >#74#return; 18790#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 18807#$Ultimate##0 ~n := #in~n; 18835#L25 assume ~n <= 0;#res := 1; 18834#factFINAL assume true; 18832#factEXIT >#76#return; 18798#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 18804#$Ultimate##0 ~n := #in~n; 18816#L25 assume !(~n <= 0); 18812#L26 call #t~ret0 := fact(~n - 1);< 18738#$Ultimate##0 ~n := #in~n; 18825#L25 assume ~n <= 0;#res := 1; 18822#factFINAL assume true; 18811#factEXIT >#66#return; 18810#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 18808#factFINAL assume true; 18785#factEXIT >#78#return; 18784#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; 18783#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 18782#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 18780#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 18747#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 18748#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 18840#L42-3 [2023-02-16 04:32:18,253 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:18,254 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 3 times [2023-02-16 04:32:18,254 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:18,254 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1550689257] [2023-02-16 04:32:18,254 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:18,254 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:18,262 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:18,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1960915800] [2023-02-16 04:32:18,262 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:32:18,262 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:18,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:18,269 INFO L229 MonitoredProcess]: Starting monitored process 135 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:18,286 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (135)] Waiting until timeout for monitored process [2023-02-16 04:32:18,327 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2023-02-16 04:32:18,327 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:18,327 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:18,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:18,355 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:18,356 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:18,356 INFO L85 PathProgramCache]: Analyzing trace with hash 386087323, now seen corresponding path program 5 times [2023-02-16 04:32:18,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:18,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [563003655] [2023-02-16 04:32:18,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:18,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:18,361 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:18,362 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2019074792] [2023-02-16 04:32:18,362 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:32:18,362 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:18,362 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:18,373 INFO L229 MonitoredProcess]: Starting monitored process 136 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:18,387 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (136)] Waiting until timeout for monitored process [2023-02-16 04:32:18,449 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2023-02-16 04:32:18,449 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:18,451 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 13 conjunts are in the unsatisfiable core [2023-02-16 04:32:18,452 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:18,532 INFO L134 CoverageAnalysis]: Checked inductivity of 701 backedges. 348 proven. 29 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2023-02-16 04:32:18,532 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:18,845 INFO L134 CoverageAnalysis]: Checked inductivity of 701 backedges. 24 proven. 248 refuted. 0 times theorem prover too weak. 429 trivial. 0 not checked. [2023-02-16 04:32:18,846 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:18,846 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [563003655] [2023-02-16 04:32:18,846 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:18,846 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2019074792] [2023-02-16 04:32:18,846 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2019074792] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:18,846 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:18,847 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 12] total 15 [2023-02-16 04:32:18,847 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1728417629] [2023-02-16 04:32:18,847 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:18,847 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:18,847 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:18,848 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2023-02-16 04:32:18,848 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2023-02-16 04:32:18,848 INFO L87 Difference]: Start difference. First operand 584 states and 822 transitions. cyclomatic complexity: 250 Second operand has 15 states, 12 states have (on average 3.6666666666666665) internal successors, (44), 12 states have internal predecessors, (44), 10 states have call successors, (23), 2 states have call predecessors, (23), 6 states have return successors, (24), 8 states have call predecessors, (24), 10 states have call successors, (24) [2023-02-16 04:32:19,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:19,176 INFO L93 Difference]: Finished difference Result 1034 states and 1397 transitions. [2023-02-16 04:32:19,176 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1034 states and 1397 transitions. [2023-02-16 04:32:19,184 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 149 [2023-02-16 04:32:19,192 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1034 states to 1029 states and 1392 transitions. [2023-02-16 04:32:19,193 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 323 [2023-02-16 04:32:19,193 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 323 [2023-02-16 04:32:19,193 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1029 states and 1392 transitions. [2023-02-16 04:32:19,193 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:19,193 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1029 states and 1392 transitions. [2023-02-16 04:32:19,194 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1029 states and 1392 transitions. [2023-02-16 04:32:19,208 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1029 to 645. [2023-02-16 04:32:19,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 645 states, 426 states have (on average 1.096244131455399) internal successors, (467), 422 states have internal predecessors, (467), 164 states have call successors, (166), 53 states have call predecessors, (166), 55 states have return successors, (286), 169 states have call predecessors, (286), 164 states have call successors, (286) [2023-02-16 04:32:19,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 645 states to 645 states and 919 transitions. [2023-02-16 04:32:19,212 INFO L240 hiAutomatonCegarLoop]: Abstraction has 645 states and 919 transitions. [2023-02-16 04:32:19,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2023-02-16 04:32:19,213 INFO L428 stractBuchiCegarLoop]: Abstraction has 645 states and 919 transitions. [2023-02-16 04:32:19,213 INFO L335 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2023-02-16 04:32:19,213 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 645 states and 919 transitions. [2023-02-16 04:32:19,217 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 96 [2023-02-16 04:32:19,217 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:19,217 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:19,218 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 6, 4, 4, 4, 4, 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] [2023-02-16 04:32:19,218 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [20, 20, 11, 11, 11, 11, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:19,218 INFO L748 eck$LassoCheckResult]: Stem: 21140#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 21072#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; 21073#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 21096#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; 21085#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 21086#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 21533#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; 21068#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 21069#$Ultimate##0 ~n := #in~n; 21523#L25 assume ~n <= 0;#res := 1; 21521#factFINAL assume true; 21519#factEXIT >#68#return; 21128#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 21129#$Ultimate##0 ~n := #in~n; 21561#L25 assume ~n <= 0;#res := 1; 21560#factFINAL assume true; 21559#factEXIT >#70#return; 21041#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 21042#$Ultimate##0 ~n := #in~n; 21590#L25 assume ~n <= 0;#res := 1; 21589#factFINAL assume true; 21588#factEXIT >#72#return; 21587#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; 21585#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 21586#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 21615#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 21612#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; 21607#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 21608#$Ultimate##0 ~n := #in~n; 21622#L25 assume !(~n <= 0); 21591#L26 call #t~ret0 := fact(~n - 1);< 21617#$Ultimate##0 ~n := #in~n; 21624#L25 assume !(~n <= 0); 21619#L26 call #t~ret0 := fact(~n - 1);< 21654#$Ultimate##0 ~n := #in~n; 21655#L25 assume ~n <= 0;#res := 1; 21658#factFINAL assume true; 21657#factEXIT >#66#return; 21620#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21653#factFINAL assume true; 21618#factEXIT >#66#return; 21614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21611#factFINAL assume true; 21609#factEXIT >#74#return; 21132#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 21131#$Ultimate##0 ~n := #in~n; 21134#L25 assume ~n <= 0;#res := 1; 21581#factFINAL assume true; 21582#factEXIT >#76#return; 21275#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 21670#$Ultimate##0 ~n := #in~n; 21669#L25 assume !(~n <= 0); 21082#L26 call #t~ret0 := fact(~n - 1);< 21650#$Ultimate##0 ~n := #in~n; 21659#L25 assume !(~n <= 0); 21081#L26 call #t~ret0 := fact(~n - 1);< 21084#$Ultimate##0 ~n := #in~n; 21668#L25 assume ~n <= 0;#res := 1; 21664#factFINAL assume true; 21662#factEXIT >#66#return; 21649#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21660#factFINAL assume true; 21648#factEXIT >#66#return; 21647#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21645#factFINAL assume true; 21274#factEXIT >#78#return; 21067#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; 21679#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 21678#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 21271#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 21269#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 21270#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 21266#L42-3 [2023-02-16 04:32:19,219 INFO L750 eck$LassoCheckResult]: Loop: 21266#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 21171#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; 21156#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 21166#$Ultimate##0 ~n := #in~n; 21194#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21198#L25 assume !(~n <= 0); 21123#L26 call #t~ret0 := fact(~n - 1);< 21200#$Ultimate##0 ~n := #in~n; 21122#L25 assume ~n <= 0;#res := 1; 21124#factFINAL assume true; 21205#factEXIT >#66#return; 21183#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21199#factFINAL assume true; 21175#factEXIT >#66#return; 21173#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21161#factFINAL assume true; 21164#factEXIT >#68#return; 21153#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 21166#$Ultimate##0 ~n := #in~n; 21194#L25 assume ~n <= 0;#res := 1; 21191#factFINAL assume true; 21189#factEXIT >#70#return; 21162#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 21160#$Ultimate##0 ~n := #in~n; 21193#L25 assume !(~n <= 0); 21179#L26 call #t~ret0 := fact(~n - 1);< 21080#$Ultimate##0 ~n := #in~n; 21198#L25 assume !(~n <= 0); 21123#L26 call #t~ret0 := fact(~n - 1);< 21200#$Ultimate##0 ~n := #in~n; 21122#L25 assume ~n <= 0;#res := 1; 21124#factFINAL assume true; 21205#factEXIT >#66#return; 21183#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21199#factFINAL assume true; 21175#factEXIT >#66#return; 21173#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21161#factFINAL assume true; 21164#factEXIT >#72#return; 21168#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; 21184#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 21174#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 21172#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 21170#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; 21148#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 21165#$Ultimate##0 ~n := #in~n; 21196#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21198#L25 assume !(~n <= 0); 21123#L26 call #t~ret0 := fact(~n - 1);< 21200#$Ultimate##0 ~n := #in~n; 21122#L25 assume ~n <= 0;#res := 1; 21124#factFINAL assume true; 21205#factEXIT >#66#return; 21183#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21199#factFINAL assume true; 21175#factEXIT >#66#return; 21173#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21161#factFINAL assume true; 21164#factEXIT >#68#return; 21149#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 21166#$Ultimate##0 ~n := #in~n; 21194#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21197#L25 assume ~n <= 0;#res := 1; 21195#factFINAL assume true; 21186#factEXIT >#66#return; 21185#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21169#factFINAL assume true; 21146#factEXIT >#70#return; 21154#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 21166#$Ultimate##0 ~n := #in~n; 21194#L25 assume ~n <= 0;#res := 1; 21191#factFINAL assume true; 21189#factEXIT >#72#return; 21190#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; 21251#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 21250#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 21249#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 21142#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; 21151#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 21165#$Ultimate##0 ~n := #in~n; 21196#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21198#L25 assume !(~n <= 0); 21123#L26 call #t~ret0 := fact(~n - 1);< 21200#$Ultimate##0 ~n := #in~n; 21122#L25 assume ~n <= 0;#res := 1; 21124#factFINAL assume true; 21205#factEXIT >#66#return; 21183#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21199#factFINAL assume true; 21175#factEXIT >#66#return; 21173#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21161#factFINAL assume true; 21164#factEXIT >#74#return; 21157#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 21166#$Ultimate##0 ~n := #in~n; 21194#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21197#L25 assume ~n <= 0;#res := 1; 21195#factFINAL assume true; 21186#factEXIT >#66#return; 21185#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21169#factFINAL assume true; 21146#factEXIT >#76#return; 21152#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 21165#$Ultimate##0 ~n := #in~n; 21196#L25 assume !(~n <= 0); 21176#L26 call #t~ret0 := fact(~n - 1);< 21188#$Ultimate##0 ~n := #in~n; 21197#L25 assume ~n <= 0;#res := 1; 21195#factFINAL assume true; 21186#factEXIT >#66#return; 21185#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 21169#factFINAL assume true; 21146#factEXIT >#78#return; 21145#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; 21144#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 21143#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 21141#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 21089#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 21090#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 21266#L42-3 [2023-02-16 04:32:19,219 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:19,219 INFO L85 PathProgramCache]: Analyzing trace with hash 1313819153, now seen corresponding path program 4 times [2023-02-16 04:32:19,219 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:19,219 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [431177180] [2023-02-16 04:32:19,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:19,220 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:19,224 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:19,225 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1101629241] [2023-02-16 04:32:19,225 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:32:19,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:19,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:19,229 INFO L229 MonitoredProcess]: Starting monitored process 137 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:19,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (137)] Waiting until timeout for monitored process [2023-02-16 04:32:19,287 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:32:19,287 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:19,288 INFO L263 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 9 conjunts are in the unsatisfiable core [2023-02-16 04:32:19,289 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:19,342 INFO L134 CoverageAnalysis]: Checked inductivity of 198 backedges. 133 proven. 5 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2023-02-16 04:32:19,342 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:19,508 INFO L134 CoverageAnalysis]: Checked inductivity of 198 backedges. 29 proven. 38 refuted. 0 times theorem prover too weak. 131 trivial. 0 not checked. [2023-02-16 04:32:19,509 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:19,509 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [431177180] [2023-02-16 04:32:19,509 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:19,509 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1101629241] [2023-02-16 04:32:19,509 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1101629241] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:19,509 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:19,509 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2023-02-16 04:32:19,509 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2553295] [2023-02-16 04:32:19,509 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:19,510 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:32:19,510 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:19,510 INFO L85 PathProgramCache]: Analyzing trace with hash 192421387, now seen corresponding path program 6 times [2023-02-16 04:32:19,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:19,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [410222850] [2023-02-16 04:32:19,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:19,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:19,516 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:19,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1271894834] [2023-02-16 04:32:19,516 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:32:19,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:19,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:19,520 INFO L229 MonitoredProcess]: Starting monitored process 138 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:19,521 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (138)] Waiting until timeout for monitored process [2023-02-16 04:32:19,596 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 12 check-sat command(s) [2023-02-16 04:32:19,596 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:19,597 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 18 conjunts are in the unsatisfiable core [2023-02-16 04:32:19,600 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:19,777 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 15 proven. 201 refuted. 0 times theorem prover too weak. 671 trivial. 0 not checked. [2023-02-16 04:32:19,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:20,166 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 15 proven. 202 refuted. 0 times theorem prover too weak. 670 trivial. 0 not checked. [2023-02-16 04:32:20,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:20,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [410222850] [2023-02-16 04:32:20,167 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:20,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1271894834] [2023-02-16 04:32:20,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1271894834] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:20,167 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:20,167 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 15] total 25 [2023-02-16 04:32:20,167 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [927541951] [2023-02-16 04:32:20,167 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:20,168 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:20,168 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:20,168 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2023-02-16 04:32:20,168 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2023-02-16 04:32:20,168 INFO L87 Difference]: Start difference. First operand 645 states and 919 transitions. cyclomatic complexity: 286 Second operand has 10 states, 9 states have (on average 4.333333333333333) internal successors, (39), 10 states have internal predecessors, (39), 7 states have call successors, (13), 2 states have call predecessors, (13), 4 states have return successors, (13), 5 states have call predecessors, (13), 7 states have call successors, (13) [2023-02-16 04:32:20,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:20,368 INFO L93 Difference]: Finished difference Result 785 states and 1128 transitions. [2023-02-16 04:32:20,368 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 785 states and 1128 transitions. [2023-02-16 04:32:20,374 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 108 [2023-02-16 04:32:20,380 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 785 states to 770 states and 1110 transitions. [2023-02-16 04:32:20,381 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 236 [2023-02-16 04:32:20,381 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 236 [2023-02-16 04:32:20,381 INFO L73 IsDeterministic]: Start isDeterministic. Operand 770 states and 1110 transitions. [2023-02-16 04:32:20,381 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:20,381 INFO L218 hiAutomatonCegarLoop]: Abstraction has 770 states and 1110 transitions. [2023-02-16 04:32:20,382 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 770 states and 1110 transitions. [2023-02-16 04:32:20,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 770 to 630. [2023-02-16 04:32:20,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 630 states, 418 states have (on average 1.0933014354066986) internal successors, (457), 413 states have internal predecessors, (457), 160 states have call successors, (161), 52 states have call predecessors, (161), 52 states have return successors, (274), 164 states have call predecessors, (274), 160 states have call successors, (274) [2023-02-16 04:32:20,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 630 states to 630 states and 892 transitions. [2023-02-16 04:32:20,398 INFO L240 hiAutomatonCegarLoop]: Abstraction has 630 states and 892 transitions. [2023-02-16 04:32:20,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-02-16 04:32:20,399 INFO L428 stractBuchiCegarLoop]: Abstraction has 630 states and 892 transitions. [2023-02-16 04:32:20,399 INFO L335 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2023-02-16 04:32:20,399 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 630 states and 892 transitions. [2023-02-16 04:32:20,402 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 96 [2023-02-16 04:32:20,403 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:20,403 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:20,404 INFO L148 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] [2023-02-16 04:32:20,404 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [20, 20, 11, 11, 11, 11, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:20,404 INFO L748 eck$LassoCheckResult]: Stem: 23792#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 23739#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; 23740#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 23764#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; 23752#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 23753#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 24213#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; 23732#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 23733#$Ultimate##0 ~n := #in~n; 24247#L25 assume ~n <= 0;#res := 1; 24246#factFINAL assume true; 24244#factEXIT >#68#return; 23783#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 23784#$Ultimate##0 ~n := #in~n; 24250#L25 assume ~n <= 0;#res := 1; 24249#factFINAL assume true; 24248#factEXIT >#70#return; 23730#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 23731#$Ultimate##0 ~n := #in~n; 24274#L25 assume ~n <= 0;#res := 1; 24273#factFINAL assume true; 24272#factEXIT >#72#return; 23758#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; 23759#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 23770#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 23778#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 23768#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; 23769#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 24280#$Ultimate##0 ~n := #in~n; 24302#L25 assume !(~n <= 0); 24275#L26 call #t~ret0 := fact(~n - 1);< 24301#$Ultimate##0 ~n := #in~n; 24304#L25 assume ~n <= 0;#res := 1; 24303#factFINAL assume true; 24300#factEXIT >#66#return; 24299#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 24290#factFINAL assume true; 24278#factEXIT >#74#return; 24269#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 24271#$Ultimate##0 ~n := #in~n; 24315#L25 assume ~n <= 0;#res := 1; 24311#factFINAL assume true; 24268#factEXIT >#76#return; 24263#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 24279#$Ultimate##0 ~n := #in~n; 24310#L25 assume !(~n <= 0); 23749#L26 call #t~ret0 := fact(~n - 1);< 24298#$Ultimate##0 ~n := #in~n; 24306#L25 assume ~n <= 0;#res := 1; 24305#factFINAL assume true; 24297#factEXIT >#66#return; 24295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 24284#factFINAL assume true; 24262#factEXIT >#78#return; 24261#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; 24260#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 24258#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 24090#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 23762#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 23763#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 23859#L42-3 [2023-02-16 04:32:20,404 INFO L750 eck$LassoCheckResult]: Loop: 23859#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 23843#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; 23802#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 23820#$Ultimate##0 ~n := #in~n; 23841#L25 assume !(~n <= 0); 23834#L26 call #t~ret0 := fact(~n - 1);< 23851#$Ultimate##0 ~n := #in~n; 23857#L25 assume !(~n <= 0); 23832#L26 call #t~ret0 := fact(~n - 1);< 23861#$Ultimate##0 ~n := #in~n; 23862#L25 assume ~n <= 0;#res := 1; 23871#factFINAL assume true; 23870#factEXIT >#66#return; 23836#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23860#factFINAL assume true; 23829#factEXIT >#66#return; 23828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23815#factFINAL assume true; 23818#factEXIT >#68#return; 23811#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 23820#$Ultimate##0 ~n := #in~n; 23841#L25 assume ~n <= 0;#res := 1; 23838#factFINAL assume true; 23825#factEXIT >#70#return; 23817#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 23814#$Ultimate##0 ~n := #in~n; 23854#L25 assume !(~n <= 0); 23830#L26 call #t~ret0 := fact(~n - 1);< 23748#$Ultimate##0 ~n := #in~n; 23857#L25 assume !(~n <= 0); 23832#L26 call #t~ret0 := fact(~n - 1);< 23861#$Ultimate##0 ~n := #in~n; 23862#L25 assume ~n <= 0;#res := 1; 23871#factFINAL assume true; 23870#factEXIT >#66#return; 23836#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23860#factFINAL assume true; 23829#factEXIT >#66#return; 23828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23815#factFINAL assume true; 23818#factEXIT >#72#return; 23822#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; 23852#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 23848#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 23846#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 23844#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; 23801#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 23819#$Ultimate##0 ~n := #in~n; 23855#L25 assume !(~n <= 0); 23834#L26 call #t~ret0 := fact(~n - 1);< 23851#$Ultimate##0 ~n := #in~n; 23857#L25 assume !(~n <= 0); 23832#L26 call #t~ret0 := fact(~n - 1);< 23861#$Ultimate##0 ~n := #in~n; 23862#L25 assume ~n <= 0;#res := 1; 23871#factFINAL assume true; 23870#factEXIT >#66#return; 23836#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23860#factFINAL assume true; 23829#factEXIT >#66#return; 23828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23815#factFINAL assume true; 23818#factEXIT >#68#return; 23804#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 23820#$Ultimate##0 ~n := #in~n; 23841#L25 assume !(~n <= 0); 23834#L26 call #t~ret0 := fact(~n - 1);< 23851#$Ultimate##0 ~n := #in~n; 23856#L25 assume ~n <= 0;#res := 1; 23853#factFINAL assume true; 23849#factEXIT >#66#return; 23840#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23824#factFINAL assume true; 23800#factEXIT >#70#return; 23805#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 23820#$Ultimate##0 ~n := #in~n; 23841#L25 assume ~n <= 0;#res := 1; 23838#factFINAL assume true; 23825#factEXIT >#72#return; 23827#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; 23863#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 23839#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 23823#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 23796#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; 23808#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 23819#$Ultimate##0 ~n := #in~n; 23855#L25 assume !(~n <= 0); 23834#L26 call #t~ret0 := fact(~n - 1);< 23851#$Ultimate##0 ~n := #in~n; 23857#L25 assume !(~n <= 0); 23832#L26 call #t~ret0 := fact(~n - 1);< 23861#$Ultimate##0 ~n := #in~n; 23862#L25 assume ~n <= 0;#res := 1; 23871#factFINAL assume true; 23870#factEXIT >#66#return; 23836#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23860#factFINAL assume true; 23829#factEXIT >#66#return; 23828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23815#factFINAL assume true; 23818#factEXIT >#74#return; 23810#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 23820#$Ultimate##0 ~n := #in~n; 23841#L25 assume ~n <= 0;#res := 1; 23838#factFINAL assume true; 23825#factEXIT >#76#return; 23813#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 23814#$Ultimate##0 ~n := #in~n; 23854#L25 assume !(~n <= 0); 23830#L26 call #t~ret0 := fact(~n - 1);< 23748#$Ultimate##0 ~n := #in~n; 23857#L25 assume !(~n <= 0); 23832#L26 call #t~ret0 := fact(~n - 1);< 23861#$Ultimate##0 ~n := #in~n; 23862#L25 assume ~n <= 0;#res := 1; 23871#factFINAL assume true; 23870#factEXIT >#66#return; 23836#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23860#factFINAL assume true; 23829#factEXIT >#66#return; 23828#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23815#factFINAL assume true; 23818#factEXIT >#78#return; 23799#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; 23798#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 23797#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 23795#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 23760#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 23761#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 23859#L42-3 [2023-02-16 04:32:20,405 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:20,405 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 5 times [2023-02-16 04:32:20,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:20,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1871830836] [2023-02-16 04:32:20,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:20,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:20,410 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:20,410 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [256428242] [2023-02-16 04:32:20,410 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:32:20,410 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:20,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:20,415 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) [2023-02-16 04:32:20,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (139)] Waiting until timeout for monitored process [2023-02-16 04:32:20,483 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2023-02-16 04:32:20,483 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:20,484 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:20,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:20,515 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:20,515 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:20,515 INFO L85 PathProgramCache]: Analyzing trace with hash 1596833803, now seen corresponding path program 7 times [2023-02-16 04:32:20,515 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:20,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [874331421] [2023-02-16 04:32:20,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:20,515 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:20,523 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:20,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1330367459] [2023-02-16 04:32:20,523 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:32:20,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:20,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:20,533 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) [2023-02-16 04:32:20,546 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (140)] Waiting until timeout for monitored process [2023-02-16 04:32:20,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:20,606 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 20 conjunts are in the unsatisfiable core [2023-02-16 04:32:20,608 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:20,724 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 469 proven. 110 refuted. 0 times theorem prover too weak. 308 trivial. 0 not checked. [2023-02-16 04:32:20,724 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:21,076 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 49 proven. 211 refuted. 0 times theorem prover too weak. 627 trivial. 0 not checked. [2023-02-16 04:32:21,076 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:21,076 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [874331421] [2023-02-16 04:32:21,076 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:21,076 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1330367459] [2023-02-16 04:32:21,076 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1330367459] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:21,076 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:21,076 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 20 [2023-02-16 04:32:21,076 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [326741639] [2023-02-16 04:32:21,076 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:21,077 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:21,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:21,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2023-02-16 04:32:21,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=321, Unknown=0, NotChecked=0, Total=380 [2023-02-16 04:32:21,078 INFO L87 Difference]: Start difference. First operand 630 states and 892 transitions. cyclomatic complexity: 273 Second operand has 20 states, 14 states have (on average 3.5) internal successors, (49), 18 states have internal predecessors, (49), 13 states have call successors, (23), 2 states have call predecessors, (23), 5 states have return successors, (23), 10 states have call predecessors, (23), 13 states have call successors, (23) [2023-02-16 04:32:21,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:21,891 INFO L93 Difference]: Finished difference Result 1136 states and 1598 transitions. [2023-02-16 04:32:21,891 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1136 states and 1598 transitions. [2023-02-16 04:32:21,899 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 190 [2023-02-16 04:32:21,907 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1136 states to 1133 states and 1595 transitions. [2023-02-16 04:32:21,908 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 378 [2023-02-16 04:32:21,908 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 378 [2023-02-16 04:32:21,908 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1133 states and 1595 transitions. [2023-02-16 04:32:21,908 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:21,909 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1133 states and 1595 transitions. [2023-02-16 04:32:21,909 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1133 states and 1595 transitions. [2023-02-16 04:32:21,926 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1133 to 773. [2023-02-16 04:32:21,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 773 states, 518 states have (on average 1.0752895752895753) internal successors, (557), 513 states have internal predecessors, (557), 203 states have call successors, (204), 52 states have call predecessors, (204), 52 states have return successors, (353), 207 states have call predecessors, (353), 203 states have call successors, (353) [2023-02-16 04:32:21,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 773 states to 773 states and 1114 transitions. [2023-02-16 04:32:21,931 INFO L240 hiAutomatonCegarLoop]: Abstraction has 773 states and 1114 transitions. [2023-02-16 04:32:21,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2023-02-16 04:32:21,932 INFO L428 stractBuchiCegarLoop]: Abstraction has 773 states and 1114 transitions. [2023-02-16 04:32:21,932 INFO L335 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2023-02-16 04:32:21,932 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 773 states and 1114 transitions. [2023-02-16 04:32:21,935 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 113 [2023-02-16 04:32:21,936 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:21,936 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:21,937 INFO L148 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] [2023-02-16 04:32:21,937 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [27, 27, 15, 15, 15, 15, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:21,937 INFO L748 eck$LassoCheckResult]: Stem: 26426#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 26349#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; 26350#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 26372#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; 26360#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 26361#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26861#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; 26858#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26859#$Ultimate##0 ~n := #in~n; 26862#L25 assume ~n <= 0;#res := 1; 26860#factFINAL assume true; 26857#factEXIT >#68#return; 26852#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26853#$Ultimate##0 ~n := #in~n; 26856#L25 assume ~n <= 0;#res := 1; 26855#factFINAL assume true; 26851#factEXIT >#70#return; 26823#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26849#$Ultimate##0 ~n := #in~n; 26854#L25 assume ~n <= 0;#res := 1; 26850#factFINAL assume true; 26848#factEXIT >#72#return; 26845#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; 26839#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 26838#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26837#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26826#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; 26822#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26824#$Ultimate##0 ~n := #in~n; 26835#L25 assume !(~n <= 0); 26830#L26 call #t~ret0 := fact(~n - 1);< 26831#$Ultimate##0 ~n := #in~n; 26842#L25 assume ~n <= 0;#res := 1; 26841#factFINAL assume true; 26829#factEXIT >#66#return; 26827#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26825#factFINAL assume true; 26821#factEXIT >#74#return; 26814#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26816#$Ultimate##0 ~n := #in~n; 26847#L25 assume ~n <= 0;#res := 1; 26844#factFINAL assume true; 26813#factEXIT >#76#return; 26773#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26789#$Ultimate##0 ~n := #in~n; 26843#L25 assume !(~n <= 0); 26810#L26 call #t~ret0 := fact(~n - 1);< 26840#$Ultimate##0 ~n := #in~n; 26864#L25 assume ~n <= 0;#res := 1; 26863#factFINAL assume true; 26809#factEXIT >#66#return; 26804#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26805#factFINAL assume true; 26771#factEXIT >#78#return; 26774#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; 27061#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 27059#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26618#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 26485#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 26486#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 26475#L42-3 [2023-02-16 04:32:21,937 INFO L750 eck$LassoCheckResult]: Loop: 26475#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26471#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; 26436#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26481#L25 assume !(~n <= 0); 26462#L26 call #t~ret0 := fact(~n - 1);< 26493#$Ultimate##0 ~n := #in~n; 26498#L25 assume ~n <= 0;#res := 1; 26501#factFINAL assume true; 26500#factEXIT >#66#return; 26468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26492#factFINAL assume true; 26460#factEXIT >#66#return; 26459#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26448#factFINAL assume true; 26451#factEXIT >#68#return; 26438#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume ~n <= 0;#res := 1; 26476#factFINAL assume true; 26457#factEXIT >#70#return; 26449#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26447#$Ultimate##0 ~n := #in~n; 26487#L25 assume !(~n <= 0); 26463#L26 call #t~ret0 := fact(~n - 1);< 26356#$Ultimate##0 ~n := #in~n; 26481#L25 assume !(~n <= 0); 26462#L26 call #t~ret0 := fact(~n - 1);< 26493#$Ultimate##0 ~n := #in~n; 26498#L25 assume ~n <= 0;#res := 1; 26501#factFINAL assume true; 26500#factEXIT >#66#return; 26468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26492#factFINAL assume true; 26460#factEXIT >#66#return; 26459#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26448#factFINAL assume true; 26451#factEXIT >#72#return; 26455#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; 26572#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 26570#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26569#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26528#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; 26450#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26447#$Ultimate##0 ~n := #in~n; 26487#L25 assume !(~n <= 0); 26463#L26 call #t~ret0 := fact(~n - 1);< 26356#$Ultimate##0 ~n := #in~n; 26481#L25 assume !(~n <= 0); 26462#L26 call #t~ret0 := fact(~n - 1);< 26493#$Ultimate##0 ~n := #in~n; 26498#L25 assume ~n <= 0;#res := 1; 26501#factFINAL assume true; 26500#factEXIT >#66#return; 26468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26492#factFINAL assume true; 26460#factEXIT >#66#return; 26459#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26448#factFINAL assume true; 26451#factEXIT >#68#return; 26444#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26479#L25 assume ~n <= 0;#res := 1; 26478#factFINAL assume true; 26472#factEXIT >#66#return; 26470#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26456#factFINAL assume true; 26432#factEXIT >#70#return; 26433#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26453#$Ultimate##0 ~n := #in~n; 26480#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26479#L25 assume ~n <= 0;#res := 1; 26478#factFINAL assume true; 26472#factEXIT >#66#return; 26470#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26456#factFINAL assume true; 26432#factEXIT >#72#return; 26445#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; 26499#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 26497#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26491#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26484#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; 26434#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26453#$Ultimate##0 ~n := #in~n; 26480#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26481#L25 assume !(~n <= 0); 26462#L26 call #t~ret0 := fact(~n - 1);< 26493#$Ultimate##0 ~n := #in~n; 26498#L25 assume ~n <= 0;#res := 1; 26501#factFINAL assume true; 26500#factEXIT >#66#return; 26468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26492#factFINAL assume true; 26460#factEXIT >#66#return; 26459#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26448#factFINAL assume true; 26451#factEXIT >#68#return; 26439#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26479#L25 assume ~n <= 0;#res := 1; 26478#factFINAL assume true; 26472#factEXIT >#66#return; 26470#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26456#factFINAL assume true; 26432#factEXIT >#70#return; 26441#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume ~n <= 0;#res := 1; 26476#factFINAL assume true; 26457#factEXIT >#72#return; 26458#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; 26490#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 26489#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26488#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 26428#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; 26437#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 26453#$Ultimate##0 ~n := #in~n; 26480#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26481#L25 assume !(~n <= 0); 26462#L26 call #t~ret0 := fact(~n - 1);< 26493#$Ultimate##0 ~n := #in~n; 26498#L25 assume ~n <= 0;#res := 1; 26501#factFINAL assume true; 26500#factEXIT >#66#return; 26468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26492#factFINAL assume true; 26460#factEXIT >#66#return; 26459#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26448#factFINAL assume true; 26451#factEXIT >#74#return; 26442#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 26452#$Ultimate##0 ~n := #in~n; 26477#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26479#L25 assume ~n <= 0;#res := 1; 26478#factFINAL assume true; 26472#factEXIT >#66#return; 26470#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26456#factFINAL assume true; 26432#factEXIT >#76#return; 26435#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 26453#$Ultimate##0 ~n := #in~n; 26480#L25 assume !(~n <= 0); 26465#L26 call #t~ret0 := fact(~n - 1);< 26474#$Ultimate##0 ~n := #in~n; 26479#L25 assume ~n <= 0;#res := 1; 26478#factFINAL assume true; 26472#factEXIT >#66#return; 26470#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 26456#factFINAL assume true; 26432#factEXIT >#78#return; 26431#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; 26430#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 26429#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 26427#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 26368#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 26369#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 26475#L42-3 [2023-02-16 04:32:21,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:21,938 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 6 times [2023-02-16 04:32:21,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:21,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1607908244] [2023-02-16 04:32:21,938 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:21,941 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:21,947 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:21,948 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1820676747] [2023-02-16 04:32:21,948 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:32:21,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:21,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:21,957 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) [2023-02-16 04:32:21,975 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (141)] Waiting until timeout for monitored process [2023-02-16 04:32:22,012 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2023-02-16 04:32:22,013 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:22,013 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:22,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:22,040 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:22,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:22,040 INFO L85 PathProgramCache]: Analyzing trace with hash -2064149382, now seen corresponding path program 8 times [2023-02-16 04:32:22,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:22,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920300432] [2023-02-16 04:32:22,041 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:22,041 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:22,048 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:22,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [162529856] [2023-02-16 04:32:22,048 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:22,048 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:22,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:22,052 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) [2023-02-16 04:32:22,053 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (142)] Waiting until timeout for monitored process [2023-02-16 04:32:22,139 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:22,140 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:22,142 INFO L263 TraceCheckSpWp]: Trace formula consists of 392 conjuncts, 23 conjunts are in the unsatisfiable core [2023-02-16 04:32:22,145 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:22,290 INFO L134 CoverageAnalysis]: Checked inductivity of 1651 backedges. 840 proven. 267 refuted. 0 times theorem prover too weak. 544 trivial. 0 not checked. [2023-02-16 04:32:22,290 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:22,913 INFO L134 CoverageAnalysis]: Checked inductivity of 1651 backedges. 147 proven. 483 refuted. 0 times theorem prover too weak. 1021 trivial. 0 not checked. [2023-02-16 04:32:22,914 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:22,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [920300432] [2023-02-16 04:32:22,914 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:22,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [162529856] [2023-02-16 04:32:22,914 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [162529856] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:22,914 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:22,914 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 18] total 22 [2023-02-16 04:32:22,914 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1096999830] [2023-02-16 04:32:22,914 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:22,915 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:22,915 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:22,915 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2023-02-16 04:32:22,915 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=390, Unknown=0, NotChecked=0, Total=462 [2023-02-16 04:32:22,916 INFO L87 Difference]: Start difference. First operand 773 states and 1114 transitions. cyclomatic complexity: 352 Second operand has 22 states, 17 states have (on average 3.411764705882353) internal successors, (58), 20 states have internal predecessors, (58), 14 states have call successors, (27), 2 states have call predecessors, (27), 7 states have return successors, (28), 11 states have call predecessors, (28), 14 states have call successors, (28) [2023-02-16 04:32:23,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:23,824 INFO L93 Difference]: Finished difference Result 1217 states and 1892 transitions. [2023-02-16 04:32:23,824 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1217 states and 1892 transitions. [2023-02-16 04:32:23,834 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 130 [2023-02-16 04:32:23,844 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1217 states to 1051 states and 1612 transitions. [2023-02-16 04:32:23,844 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 331 [2023-02-16 04:32:23,845 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 331 [2023-02-16 04:32:23,845 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1051 states and 1612 transitions. [2023-02-16 04:32:23,845 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:23,846 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1051 states and 1612 transitions. [2023-02-16 04:32:23,846 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1051 states and 1612 transitions. [2023-02-16 04:32:23,896 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1051 to 663. [2023-02-16 04:32:23,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 663 states, 443 states have (on average 1.0880361173814899) internal successors, (482), 438 states have internal predecessors, (482), 168 states have call successors, (169), 52 states have call predecessors, (169), 52 states have return successors, (258), 172 states have call predecessors, (258), 168 states have call successors, (258) [2023-02-16 04:32:23,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 663 states to 663 states and 909 transitions. [2023-02-16 04:32:23,900 INFO L240 hiAutomatonCegarLoop]: Abstraction has 663 states and 909 transitions. [2023-02-16 04:32:23,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2023-02-16 04:32:23,900 INFO L428 stractBuchiCegarLoop]: Abstraction has 663 states and 909 transitions. [2023-02-16 04:32:23,901 INFO L335 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2023-02-16 04:32:23,901 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 663 states and 909 transitions. [2023-02-16 04:32:23,903 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 97 [2023-02-16 04:32:23,903 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:23,904 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:23,905 INFO L148 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] [2023-02-16 04:32:23,905 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [28, 28, 16, 16, 16, 16, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:23,905 INFO L748 eck$LassoCheckResult]: Stem: 29492#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 29433#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; 29434#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 29455#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; 29445#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 29446#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29976#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; 29971#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29972#$Ultimate##0 ~n := #in~n; 29975#L25 assume ~n <= 0;#res := 1; 29974#factFINAL assume true; 29970#factEXIT >#68#return; 29962#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29963#$Ultimate##0 ~n := #in~n; 29973#L25 assume ~n <= 0;#res := 1; 29969#factFINAL assume true; 29961#factEXIT >#70#return; 29394#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 29395#$Ultimate##0 ~n := #in~n; 29928#L25 assume ~n <= 0;#res := 1; 29916#factFINAL assume true; 29915#factEXIT >#72#return; 29914#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; 29913#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 29912#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29911#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29910#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; 29908#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29909#$Ultimate##0 ~n := #in~n; 29930#L25 assume !(~n <= 0); 29925#L26 call #t~ret0 := fact(~n - 1);< 29926#$Ultimate##0 ~n := #in~n; 29931#L25 assume ~n <= 0;#res := 1; 29929#factFINAL assume true; 29924#factEXIT >#66#return; 29922#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29918#factFINAL assume true; 29907#factEXIT >#74#return; 29900#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29901#$Ultimate##0 ~n := #in~n; 29987#L25 assume ~n <= 0;#res := 1; 29985#factFINAL assume true; 29983#factEXIT >#76#return; 29965#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 30032#$Ultimate##0 ~n := #in~n; 30038#L25 assume !(~n <= 0); 29429#L26 call #t~ret0 := fact(~n - 1);< 30036#$Ultimate##0 ~n := #in~n; 30039#L25 assume ~n <= 0;#res := 1; 30037#factFINAL assume true; 30035#factEXIT >#66#return; 30034#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30033#factFINAL assume true; 30031#factEXIT >#78#return; 29967#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; 30030#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 30028#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29642#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 29634#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 29635#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 29540#L42-3 [2023-02-16 04:32:23,905 INFO L750 eck$LassoCheckResult]: Loop: 29540#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29525#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; 29501#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29519#$Ultimate##0 ~n := #in~n; 29547#L25 assume !(~n <= 0); 29528#L26 call #t~ret0 := fact(~n - 1);< 29531#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#68#return; 29505#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29519#$Ultimate##0 ~n := #in~n; 29547#L25 assume ~n <= 0;#res := 1; 29546#factFINAL assume true; 29545#factEXIT >#70#return; 29516#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#72#return; 29521#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; 29539#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 29538#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29536#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29532#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; 29517#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#68#return; 29500#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29519#$Ultimate##0 ~n := #in~n; 29547#L25 assume !(~n <= 0); 29528#L26 call #t~ret0 := fact(~n - 1);< 29531#$Ultimate##0 ~n := #in~n; 29535#L25 assume ~n <= 0;#res := 1; 29533#factFINAL assume true; 29526#factEXIT >#66#return; 29524#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29522#factFINAL assume true; 29499#factEXIT >#70#return; 29504#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 29523#$Ultimate##0 ~n := #in~n; 29534#L25 assume !(~n <= 0); 29528#L26 call #t~ret0 := fact(~n - 1);< 29531#$Ultimate##0 ~n := #in~n; 29535#L25 assume ~n <= 0;#res := 1; 29533#factFINAL assume true; 29526#factEXIT >#66#return; 29524#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29522#factFINAL assume true; 29499#factEXIT >#72#return; 29507#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; 29570#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 29569#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29567#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29564#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; 29515#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#68#return; 29511#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#70#return; 29503#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 29519#$Ultimate##0 ~n := #in~n; 29547#L25 assume ~n <= 0;#res := 1; 29546#factFINAL assume true; 29545#factEXIT >#72#return; 29544#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; 29543#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 29542#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29541#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 29495#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; 29514#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#74#return; 29506#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 29519#$Ultimate##0 ~n := #in~n; 29547#L25 assume ~n <= 0;#res := 1; 29546#factFINAL assume true; 29545#factEXIT >#76#return; 29508#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 29509#$Ultimate##0 ~n := #in~n; 29562#L25 assume !(~n <= 0); 29557#L26 call #t~ret0 := fact(~n - 1);< 29440#$Ultimate##0 ~n := #in~n; 29537#L25 assume !(~n <= 0); 29558#L26 call #t~ret0 := fact(~n - 1);< 29566#$Ultimate##0 ~n := #in~n; 29568#L25 assume ~n <= 0;#res := 1; 29575#factFINAL assume true; 29574#factEXIT >#66#return; 29561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29565#factFINAL assume true; 29556#factEXIT >#66#return; 29554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 29510#factFINAL assume true; 29518#factEXIT >#78#return; 29498#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; 29497#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 29496#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 29494#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 29452#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 29453#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 29540#L42-3 [2023-02-16 04:32:23,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:23,906 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 7 times [2023-02-16 04:32:23,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:23,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [319221632] [2023-02-16 04:32:23,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:23,907 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:23,911 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:23,911 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1972860311] [2023-02-16 04:32:23,911 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:32:23,911 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:23,912 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:23,915 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) [2023-02-16 04:32:23,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (143)] Waiting until timeout for monitored process [2023-02-16 04:32:23,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:23,971 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:23,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:24,002 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:24,002 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:24,002 INFO L85 PathProgramCache]: Analyzing trace with hash -1760509054, now seen corresponding path program 9 times [2023-02-16 04:32:24,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:24,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2134642936] [2023-02-16 04:32:24,003 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:24,003 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:24,012 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:24,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [318785025] [2023-02-16 04:32:24,012 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:32:24,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:24,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:24,015 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) [2023-02-16 04:32:24,016 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (144)] Waiting until timeout for monitored process [2023-02-16 04:32:24,086 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2023-02-16 04:32:24,086 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:24,088 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 11 conjunts are in the unsatisfiable core [2023-02-16 04:32:24,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:24,148 INFO L134 CoverageAnalysis]: Checked inductivity of 1789 backedges. 238 proven. 3 refuted. 0 times theorem prover too weak. 1548 trivial. 0 not checked. [2023-02-16 04:32:24,148 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:24,367 INFO L134 CoverageAnalysis]: Checked inductivity of 1789 backedges. 238 proven. 4 refuted. 0 times theorem prover too weak. 1547 trivial. 0 not checked. [2023-02-16 04:32:24,367 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:24,367 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2134642936] [2023-02-16 04:32:24,367 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:24,367 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [318785025] [2023-02-16 04:32:24,368 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [318785025] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:24,368 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:24,368 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2023-02-16 04:32:24,368 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1096625149] [2023-02-16 04:32:24,368 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:24,368 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:24,368 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:24,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2023-02-16 04:32:24,369 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2023-02-16 04:32:24,369 INFO L87 Difference]: Start difference. First operand 663 states and 909 transitions. cyclomatic complexity: 257 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) [2023-02-16 04:32:24,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:24,524 INFO L93 Difference]: Finished difference Result 788 states and 1118 transitions. [2023-02-16 04:32:24,524 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 788 states and 1118 transitions. [2023-02-16 04:32:24,530 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 132 [2023-02-16 04:32:24,536 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 788 states to 780 states and 1098 transitions. [2023-02-16 04:32:24,537 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 240 [2023-02-16 04:32:24,537 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 240 [2023-02-16 04:32:24,537 INFO L73 IsDeterministic]: Start isDeterministic. Operand 780 states and 1098 transitions. [2023-02-16 04:32:24,537 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:24,537 INFO L218 hiAutomatonCegarLoop]: Abstraction has 780 states and 1098 transitions. [2023-02-16 04:32:24,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 780 states and 1098 transitions. [2023-02-16 04:32:24,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 780 to 699. [2023-02-16 04:32:24,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 699 states, 455 states have (on average 1.1032967032967034) internal successors, (502), 458 states have internal predecessors, (502), 192 states have call successors, (193), 52 states have call predecessors, (193), 52 states have return successors, (286), 188 states have call predecessors, (286), 192 states have call successors, (286) [2023-02-16 04:32:24,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 699 states to 699 states and 981 transitions. [2023-02-16 04:32:24,555 INFO L240 hiAutomatonCegarLoop]: Abstraction has 699 states and 981 transitions. [2023-02-16 04:32:24,556 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2023-02-16 04:32:24,556 INFO L428 stractBuchiCegarLoop]: Abstraction has 699 states and 981 transitions. [2023-02-16 04:32:24,556 INFO L335 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2023-02-16 04:32:24,556 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 699 states and 981 transitions. [2023-02-16 04:32:24,559 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 113 [2023-02-16 04:32:24,559 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:24,559 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:24,560 INFO L148 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] [2023-02-16 04:32:24,560 INFO L149 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] [2023-02-16 04:32:24,560 INFO L748 eck$LassoCheckResult]: Stem: 32019#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 31959#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; 31960#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 31987#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; 31975#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 31976#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32530#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; 31941#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 31942#$Ultimate##0 ~n := #in~n; 32616#L25 assume ~n <= 0;#res := 1; 32615#factFINAL assume true; 32613#factEXIT >#68#return; 32478#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32479#$Ultimate##0 ~n := #in~n; 32617#L25 assume ~n <= 0;#res := 1; 32612#factFINAL assume true; 32477#factEXIT >#70#return; 31938#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 31939#$Ultimate##0 ~n := #in~n; 32583#L25 assume ~n <= 0;#res := 1; 32582#factFINAL assume true; 32580#factEXIT >#72#return; 32578#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; 32577#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 32576#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32575#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32489#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; 31928#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 31929#$Ultimate##0 ~n := #in~n; 32574#L25 assume !(~n <= 0); 32571#L26 call #t~ret0 := fact(~n - 1);< 32572#$Ultimate##0 ~n := #in~n; 32581#L25 assume ~n <= 0;#res := 1; 32579#factFINAL assume true; 32570#factEXIT >#66#return; 32568#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32567#factFINAL assume true; 32560#factEXIT >#74#return; 32553#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32565#$Ultimate##0 ~n := #in~n; 32596#L25 assume ~n <= 0;#res := 1; 32595#factFINAL assume true; 32566#factEXIT >#76#return; 32357#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 32359#$Ultimate##0 ~n := #in~n; 32604#L25 assume !(~n <= 0); 32535#L26 call #t~ret0 := fact(~n - 1);< 32600#$Ultimate##0 ~n := #in~n; 32607#L25 assume ~n <= 0;#res := 1; 32606#factFINAL assume true; 32599#factEXIT >#66#return; 32598#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32597#factFINAL assume true; 32356#factEXIT >#78#return; 32358#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; 32624#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 32332#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32192#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 31985#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 31986#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 32096#L42-3 [2023-02-16 04:32:24,560 INFO L750 eck$LassoCheckResult]: Loop: 32096#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32057#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; 32031#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 32050#$Ultimate##0 ~n := #in~n; 32093#L25 assume !(~n <= 0); 32059#L26 call #t~ret0 := fact(~n - 1);< 32062#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#68#return; 32032#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32050#$Ultimate##0 ~n := #in~n; 32093#L25 assume ~n <= 0;#res := 1; 32092#factFINAL assume true; 32077#factEXIT >#70#return; 32044#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 32039#$Ultimate##0 ~n := #in~n; 32072#L25 assume !(~n <= 0); 32067#L26 call #t~ret0 := fact(~n - 1);< 31973#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#72#return; 32054#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; 32094#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 32065#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32064#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32063#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; 32047#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 32039#$Ultimate##0 ~n := #in~n; 32072#L25 assume !(~n <= 0); 32067#L26 call #t~ret0 := fact(~n - 1);< 31973#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#68#return; 32033#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32050#$Ultimate##0 ~n := #in~n; 32093#L25 assume !(~n <= 0); 32059#L26 call #t~ret0 := fact(~n - 1);< 32062#$Ultimate##0 ~n := #in~n; 32087#L25 assume ~n <= 0;#res := 1; 32079#factFINAL assume true; 32058#factEXIT >#66#return; 32051#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32052#factFINAL assume true; 32027#factEXIT >#70#return; 32036#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 32055#$Ultimate##0 ~n := #in~n; 32085#L25 assume !(~n <= 0); 32059#L26 call #t~ret0 := fact(~n - 1);< 32062#$Ultimate##0 ~n := #in~n; 32087#L25 assume ~n <= 0;#res := 1; 32079#factFINAL assume true; 32058#factEXIT >#66#return; 32051#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32052#factFINAL assume true; 32027#factEXIT >#72#return; 32037#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; 32091#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 32090#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32088#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32086#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; 32046#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 32039#$Ultimate##0 ~n := #in~n; 32072#L25 assume !(~n <= 0); 32067#L26 call #t~ret0 := fact(~n - 1);< 31973#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#68#return; 32041#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32039#$Ultimate##0 ~n := #in~n; 32072#L25 assume !(~n <= 0); 32067#L26 call #t~ret0 := fact(~n - 1);< 31973#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#70#return; 32029#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 32050#$Ultimate##0 ~n := #in~n; 32093#L25 assume ~n <= 0;#res := 1; 32092#factFINAL assume true; 32077#factEXIT >#72#return; 32076#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; 32075#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 32074#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32073#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 32071#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; 32045#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 32039#$Ultimate##0 ~n := #in~n; 32072#L25 assume !(~n <= 0); 32067#L26 call #t~ret0 := fact(~n - 1);< 31973#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#74#return; 32030#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 32050#$Ultimate##0 ~n := #in~n; 32093#L25 assume !(~n <= 0); 32059#L26 call #t~ret0 := fact(~n - 1);< 32062#$Ultimate##0 ~n := #in~n; 32089#L25 assume !(~n <= 0); 31931#L26 call #t~ret0 := fact(~n - 1);< 32098#$Ultimate##0 ~n := #in~n; 32099#L25 assume ~n <= 0;#res := 1; 32143#factFINAL assume true; 31930#factEXIT >#66#return; 31932#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32097#factFINAL assume true; 32066#factEXIT >#66#return; 32056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32040#factFINAL assume true; 32049#factEXIT >#76#return; 32035#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 32055#$Ultimate##0 ~n := #in~n; 32085#L25 assume !(~n <= 0); 32059#L26 call #t~ret0 := fact(~n - 1);< 32062#$Ultimate##0 ~n := #in~n; 32087#L25 assume ~n <= 0;#res := 1; 32079#factFINAL assume true; 32058#factEXIT >#66#return; 32051#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 32052#factFINAL assume true; 32027#factEXIT >#78#return; 32026#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; 32025#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 32024#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 32022#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 31983#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 31984#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 32096#L42-3 [2023-02-16 04:32:24,561 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:24,561 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 8 times [2023-02-16 04:32:24,561 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:24,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1157668479] [2023-02-16 04:32:24,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:24,561 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:24,566 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:24,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1338470245] [2023-02-16 04:32:24,566 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:24,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:24,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:24,569 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) [2023-02-16 04:32:24,570 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (145)] Waiting until timeout for monitored process [2023-02-16 04:32:24,625 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:24,625 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:24,625 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:24,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:24,666 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:24,667 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:24,667 INFO L85 PathProgramCache]: Analyzing trace with hash -2118586678, now seen corresponding path program 10 times [2023-02-16 04:32:24,667 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:24,667 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [456101348] [2023-02-16 04:32:24,667 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:24,667 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:24,674 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:24,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [849161354] [2023-02-16 04:32:24,674 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:32:24,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:24,675 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:24,679 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) [2023-02-16 04:32:24,680 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (146)] Waiting until timeout for monitored process [2023-02-16 04:32:24,772 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:32:24,772 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:24,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 416 conjuncts, 26 conjunts are in the unsatisfiable core [2023-02-16 04:32:24,777 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:24,940 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 803 proven. 362 refuted. 0 times theorem prover too weak. 768 trivial. 0 not checked. [2023-02-16 04:32:24,940 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:25,643 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 245 proven. 529 refuted. 0 times theorem prover too weak. 1159 trivial. 0 not checked. [2023-02-16 04:32:25,643 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:25,643 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [456101348] [2023-02-16 04:32:25,643 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:25,643 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [849161354] [2023-02-16 04:32:25,643 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [849161354] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:25,643 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:25,643 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 19] total 23 [2023-02-16 04:32:25,644 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1983142289] [2023-02-16 04:32:25,644 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:25,644 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:25,644 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:25,645 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2023-02-16 04:32:25,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=79, Invalid=427, Unknown=0, NotChecked=0, Total=506 [2023-02-16 04:32:25,646 INFO L87 Difference]: Start difference. First operand 699 states and 981 transitions. cyclomatic complexity: 293 Second operand has 23 states, 18 states have (on average 3.2777777777777777) internal successors, (59), 21 states have internal predecessors, (59), 15 states have call successors, (25), 2 states have call predecessors, (25), 7 states have return successors, (26), 11 states have call predecessors, (26), 15 states have call successors, (26) [2023-02-16 04:32:26,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:26,641 INFO L93 Difference]: Finished difference Result 1254 states and 1986 transitions. [2023-02-16 04:32:26,641 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1254 states and 1986 transitions. [2023-02-16 04:32:26,654 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 145 [2023-02-16 04:32:26,666 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1254 states to 1254 states and 1986 transitions. [2023-02-16 04:32:26,667 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 407 [2023-02-16 04:32:26,667 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 407 [2023-02-16 04:32:26,667 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1254 states and 1986 transitions. [2023-02-16 04:32:26,667 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:26,668 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1254 states and 1986 transitions. [2023-02-16 04:32:26,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1254 states and 1986 transitions. [2023-02-16 04:32:26,696 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1254 to 914. [2023-02-16 04:32:26,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 914 states, 605 states have (on average 1.0925619834710745) internal successors, (661), 609 states have internal predecessors, (661), 242 states have call successors, (243), 52 states have call predecessors, (243), 67 states have return successors, (520), 252 states have call predecessors, (520), 242 states have call successors, (520) [2023-02-16 04:32:26,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 914 states to 914 states and 1424 transitions. [2023-02-16 04:32:26,702 INFO L240 hiAutomatonCegarLoop]: Abstraction has 914 states and 1424 transitions. [2023-02-16 04:32:26,703 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-02-16 04:32:26,703 INFO L428 stractBuchiCegarLoop]: Abstraction has 914 states and 1424 transitions. [2023-02-16 04:32:26,703 INFO L335 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2023-02-16 04:32:26,704 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 914 states and 1424 transitions. [2023-02-16 04:32:26,707 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 126 [2023-02-16 04:32:26,707 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:26,707 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:26,711 INFO L148 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] [2023-02-16 04:32:26,712 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [34, 34, 22, 22, 22, 22, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:26,712 INFO L748 eck$LassoCheckResult]: Stem: 35154#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 35089#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; 35090#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 35112#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; 35100#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 35101#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35800#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; 35072#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35073#$Ultimate##0 ~n := #in~n; 35897#L25 assume ~n <= 0;#res := 1; 35895#factFINAL assume true; 35892#factEXIT >#68#return; 35143#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35144#$Ultimate##0 ~n := #in~n; 35803#L25 assume ~n <= 0;#res := 1; 35802#factFINAL assume true; 35801#factEXIT >#70#return; 35052#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35053#$Ultimate##0 ~n := #in~n; 35865#L25 assume ~n <= 0;#res := 1; 35864#factFINAL assume true; 35863#factEXIT >#72#return; 35862#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; 35861#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 35860#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35859#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35858#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; 35855#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35857#$Ultimate##0 ~n := #in~n; 35900#L25 assume !(~n <= 0); 35866#L26 call #t~ret0 := fact(~n - 1);< 35899#$Ultimate##0 ~n := #in~n; 35902#L25 assume ~n <= 0;#res := 1; 35901#factFINAL assume true; 35898#factEXIT >#66#return; 35896#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35894#factFINAL assume true; 35854#factEXIT >#74#return; 35848#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35850#$Ultimate##0 ~n := #in~n; 35867#L25 assume ~n <= 0;#res := 1; 35868#factFINAL assume true; 35847#factEXIT >#76#return; 35826#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35827#$Ultimate##0 ~n := #in~n; 35876#L25 assume !(~n <= 0); 35842#L26 call #t~ret0 := fact(~n - 1);< 35874#$Ultimate##0 ~n := #in~n; 35877#L25 assume ~n <= 0;#res := 1; 35875#factFINAL assume true; 35873#factEXIT >#66#return; 35872#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35829#factFINAL assume true; 35825#factEXIT >#78#return; 35824#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; 35823#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 35808#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35408#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 35106#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 35107#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 35234#L42-3 [2023-02-16 04:32:26,712 INFO L750 eck$LassoCheckResult]: Loop: 35234#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35209#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; 35174#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35191#$Ultimate##0 ~n := #in~n; 35221#L25 assume !(~n <= 0); 35202#L26 call #t~ret0 := fact(~n - 1);< 35225#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#68#return; 35172#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35191#$Ultimate##0 ~n := #in~n; 35221#L25 assume ~n <= 0;#res := 1; 35218#factFINAL assume true; 35211#factEXIT >#70#return; 35164#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35190#$Ultimate##0 ~n := #in~n; 35257#L25 assume !(~n <= 0); 35201#L26 call #t~ret0 := fact(~n - 1);< 35096#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#72#return; 35184#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; 35253#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 35254#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35247#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35248#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; 35178#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35190#$Ultimate##0 ~n := #in~n; 35257#L25 assume !(~n <= 0); 35201#L26 call #t~ret0 := fact(~n - 1);< 35096#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#68#return; 35163#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35191#$Ultimate##0 ~n := #in~n; 35221#L25 assume !(~n <= 0); 35202#L26 call #t~ret0 := fact(~n - 1);< 35225#$Ultimate##0 ~n := #in~n; 35230#L25 assume ~n <= 0;#res := 1; 35227#factFINAL assume true; 35222#factEXIT >#66#return; 35208#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35188#factFINAL assume true; 35189#factEXIT >#70#return; 35181#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35187#$Ultimate##0 ~n := #in~n; 35228#L25 assume !(~n <= 0); 35202#L26 call #t~ret0 := fact(~n - 1);< 35225#$Ultimate##0 ~n := #in~n; 35230#L25 assume ~n <= 0;#res := 1; 35227#factFINAL assume true; 35222#factEXIT >#66#return; 35208#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35188#factFINAL assume true; 35189#factEXIT >#72#return; 35196#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; 35244#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 35243#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35242#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35240#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; 35179#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35190#$Ultimate##0 ~n := #in~n; 35257#L25 assume !(~n <= 0); 35201#L26 call #t~ret0 := fact(~n - 1);< 35096#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#68#return; 35165#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35190#$Ultimate##0 ~n := #in~n; 35257#L25 assume !(~n <= 0); 35201#L26 call #t~ret0 := fact(~n - 1);< 35096#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#70#return; 35170#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35191#$Ultimate##0 ~n := #in~n; 35221#L25 assume ~n <= 0;#res := 1; 35218#factFINAL assume true; 35211#factEXIT >#72#return; 35212#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; 35239#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 35236#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35232#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 35192#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; 35169#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 35190#$Ultimate##0 ~n := #in~n; 35257#L25 assume !(~n <= 0); 35201#L26 call #t~ret0 := fact(~n - 1);< 35096#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35219#L25 assume !(~n <= 0); 35200#L26 call #t~ret0 := fact(~n - 1);< 35217#$Ultimate##0 ~n := #in~n; 35231#L25 assume ~n <= 0;#res := 1; 35229#factFINAL assume true; 35226#factEXIT >#66#return; 35220#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35216#factFINAL assume true; 35214#factEXIT >#66#return; 35205#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35235#factFINAL assume true; 35198#factEXIT >#66#return; 35197#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35194#factFINAL assume true; 35193#factEXIT >#74#return; 35166#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 35191#$Ultimate##0 ~n := #in~n; 35221#L25 assume !(~n <= 0); 35202#L26 call #t~ret0 := fact(~n - 1);< 35225#$Ultimate##0 ~n := #in~n; 35230#L25 assume ~n <= 0;#res := 1; 35227#factFINAL assume true; 35222#factEXIT >#66#return; 35208#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35188#factFINAL assume true; 35189#factEXIT >#76#return; 35171#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 35187#$Ultimate##0 ~n := #in~n; 35228#L25 assume !(~n <= 0); 35202#L26 call #t~ret0 := fact(~n - 1);< 35225#$Ultimate##0 ~n := #in~n; 35230#L25 assume ~n <= 0;#res := 1; 35227#factFINAL assume true; 35222#factEXIT >#66#return; 35208#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 35188#factFINAL assume true; 35189#factEXIT >#78#return; 35161#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; 35160#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 35159#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 35157#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 35104#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 35105#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 35234#L42-3 [2023-02-16 04:32:26,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:26,713 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 9 times [2023-02-16 04:32:26,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:26,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1043899597] [2023-02-16 04:32:26,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:26,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:26,719 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:26,720 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1678020949] [2023-02-16 04:32:26,720 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:32:26,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:26,720 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:26,723 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) [2023-02-16 04:32:26,724 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (147)] Waiting until timeout for monitored process [2023-02-16 04:32:26,784 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2023-02-16 04:32:26,785 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:26,785 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:26,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:26,818 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:26,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:26,818 INFO L85 PathProgramCache]: Analyzing trace with hash 974475106, now seen corresponding path program 11 times [2023-02-16 04:32:26,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:26,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2014425051] [2023-02-16 04:32:26,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:26,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:26,832 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:26,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1113520143] [2023-02-16 04:32:26,833 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:32:26,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:26,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:26,837 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) [2023-02-16 04:32:26,838 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (148)] Waiting until timeout for monitored process [2023-02-16 04:32:26,974 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 16 check-sat command(s) [2023-02-16 04:32:26,974 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:26,976 INFO L263 TraceCheckSpWp]: Trace formula consists of 404 conjuncts, 17 conjunts are in the unsatisfiable core [2023-02-16 04:32:26,980 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:27,077 INFO L134 CoverageAnalysis]: Checked inductivity of 2743 backedges. 1701 proven. 59 refuted. 0 times theorem prover too weak. 983 trivial. 0 not checked. [2023-02-16 04:32:27,078 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:27,652 INFO L134 CoverageAnalysis]: Checked inductivity of 2743 backedges. 303 proven. 534 refuted. 0 times theorem prover too weak. 1906 trivial. 0 not checked. [2023-02-16 04:32:27,652 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:27,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2014425051] [2023-02-16 04:32:27,652 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:27,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1113520143] [2023-02-16 04:32:27,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1113520143] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:27,652 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:27,653 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 14] total 17 [2023-02-16 04:32:27,653 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [445989686] [2023-02-16 04:32:27,653 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:27,653 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:27,653 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:27,653 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2023-02-16 04:32:27,654 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2023-02-16 04:32:27,654 INFO L87 Difference]: Start difference. First operand 914 states and 1424 transitions. cyclomatic complexity: 521 Second operand has 17 states, 14 states have (on average 3.642857142857143) internal successors, (51), 14 states have internal predecessors, (51), 11 states have call successors, (26), 2 states have call predecessors, (26), 7 states have return successors, (29), 9 states have call predecessors, (29), 11 states have call successors, (29) [2023-02-16 04:32:28,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:28,089 INFO L93 Difference]: Finished difference Result 1467 states and 2304 transitions. [2023-02-16 04:32:28,090 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1467 states and 2304 transitions. [2023-02-16 04:32:28,101 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 200 [2023-02-16 04:32:28,115 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1467 states to 1456 states and 2285 transitions. [2023-02-16 04:32:28,115 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 480 [2023-02-16 04:32:28,116 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 480 [2023-02-16 04:32:28,116 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1456 states and 2285 transitions. [2023-02-16 04:32:28,116 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:28,116 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1456 states and 2285 transitions. [2023-02-16 04:32:28,117 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1456 states and 2285 transitions. [2023-02-16 04:32:28,182 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1456 to 937. [2023-02-16 04:32:28,183 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 937 states, 605 states have (on average 1.0925619834710745) internal successors, (661), 609 states have internal predecessors, (661), 265 states have call successors, (266), 52 states have call predecessors, (266), 67 states have return successors, (559), 275 states have call predecessors, (559), 265 states have call successors, (559) [2023-02-16 04:32:28,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 937 states to 937 states and 1486 transitions. [2023-02-16 04:32:28,188 INFO L240 hiAutomatonCegarLoop]: Abstraction has 937 states and 1486 transitions. [2023-02-16 04:32:28,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2023-02-16 04:32:28,192 INFO L428 stractBuchiCegarLoop]: Abstraction has 937 states and 1486 transitions. [2023-02-16 04:32:28,192 INFO L335 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2023-02-16 04:32:28,192 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 937 states and 1486 transitions. [2023-02-16 04:32:28,196 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 128 [2023-02-16 04:32:28,196 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:28,196 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:28,197 INFO L148 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] [2023-02-16 04:32:28,197 INFO L149 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] [2023-02-16 04:32:28,197 INFO L748 eck$LassoCheckResult]: Stem: 38876#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 38793#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; 38794#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 38819#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; 38809#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 38810#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 39530#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; 38787#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38788#$Ultimate##0 ~n := #in~n; 39569#L25 assume ~n <= 0;#res := 1; 39567#factFINAL assume true; 39565#factEXIT >#68#return; 38855#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 38856#$Ultimate##0 ~n := #in~n; 39570#L25 assume ~n <= 0;#res := 1; 39568#factFINAL assume true; 39566#factEXIT >#70#return; 38784#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38785#$Ultimate##0 ~n := #in~n; 39581#L25 assume ~n <= 0;#res := 1; 39580#factFINAL assume true; 39579#factEXIT >#72#return; 39578#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; 38826#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 38827#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 39602#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 38824#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; 38748#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38749#$Ultimate##0 ~n := #in~n; 39630#L25 assume !(~n <= 0); 39582#L26 call #t~ret0 := fact(~n - 1);< 39628#$Ultimate##0 ~n := #in~n; 39631#L25 assume ~n <= 0;#res := 1; 39629#factFINAL assume true; 39627#factEXIT >#66#return; 39626#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 39625#factFINAL assume true; 39623#factEXIT >#74#return; 39608#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 39620#$Ultimate##0 ~n := #in~n; 39624#L25 assume ~n <= 0;#res := 1; 39622#factFINAL assume true; 39619#factEXIT >#76#return; 38781#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38877#$Ultimate##0 ~n := #in~n; 39661#L25 assume !(~n <= 0); 38791#L26 call #t~ret0 := fact(~n - 1);< 38808#$Ultimate##0 ~n := #in~n; 38854#L25 assume ~n <= 0;#res := 1; 38790#factFINAL assume true; 38792#factEXIT >#66#return; 38848#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38849#factFINAL assume true; 38780#factEXIT >#78#return; 38782#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; 39671#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 39670#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 39284#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 39282#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 39092#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 39089#L42-3 [2023-02-16 04:32:28,197 INFO L750 eck$LassoCheckResult]: Loop: 39089#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 38953#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; 38886#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38913#$Ultimate##0 ~n := #in~n; 38951#L25 assume !(~n <= 0); 38926#L26 call #t~ret0 := fact(~n - 1);< 38945#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#68#return; 38887#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 38913#$Ultimate##0 ~n := #in~n; 38951#L25 assume ~n <= 0;#res := 1; 38956#factFINAL assume true; 38954#factEXIT >#70#return; 38901#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38912#$Ultimate##0 ~n := #in~n; 38976#L25 assume !(~n <= 0); 38922#L26 call #t~ret0 := fact(~n - 1);< 38800#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#72#return; 38916#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; 38974#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 38973#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 38968#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 38967#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; 38906#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38912#$Ultimate##0 ~n := #in~n; 38976#L25 assume !(~n <= 0); 38922#L26 call #t~ret0 := fact(~n - 1);< 38800#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38942#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38900#factFINAL assume true; 38911#factEXIT >#68#return; 38892#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 38913#$Ultimate##0 ~n := #in~n; 38951#L25 assume !(~n <= 0); 38926#L26 call #t~ret0 := fact(~n - 1);< 38945#$Ultimate##0 ~n := #in~n; 38947#L25 assume ~n <= 0;#res := 1; 38944#factFINAL assume true; 38936#factEXIT >#66#return; 38931#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38932#factFINAL assume true; 38883#factEXIT >#70#return; 38891#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38899#$Ultimate##0 ~n := #in~n; 38948#L25 assume !(~n <= 0); 38926#L26 call #t~ret0 := fact(~n - 1);< 38945#$Ultimate##0 ~n := #in~n; 38947#L25 assume ~n <= 0;#res := 1; 38944#factFINAL assume true; 38936#factEXIT >#66#return; 38931#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38932#factFINAL assume true; 38883#factEXIT >#72#return; 38897#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; 38972#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 38971#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 38970#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 38969#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; 38908#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38912#$Ultimate##0 ~n := #in~n; 38976#L25 assume !(~n <= 0); 38922#L26 call #t~ret0 := fact(~n - 1);< 38800#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#68#return; 38902#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 38912#$Ultimate##0 ~n := #in~n; 38976#L25 assume !(~n <= 0); 38922#L26 call #t~ret0 := fact(~n - 1);< 38800#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#70#return; 38894#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38913#$Ultimate##0 ~n := #in~n; 38951#L25 assume ~n <= 0;#res := 1; 38956#factFINAL assume true; 38954#factEXIT >#72#return; 38955#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; 38975#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 38958#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 38957#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 38914#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; 38909#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 38912#$Ultimate##0 ~n := #in~n; 38976#L25 assume !(~n <= 0); 38922#L26 call #t~ret0 := fact(~n - 1);< 38800#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#74#return; 38893#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 38913#$Ultimate##0 ~n := #in~n; 38951#L25 assume !(~n <= 0); 38926#L26 call #t~ret0 := fact(~n - 1);< 38945#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38935#L25 assume !(~n <= 0); 38925#L26 call #t~ret0 := fact(~n - 1);< 38934#$Ultimate##0 ~n := #in~n; 38938#L25 assume ~n <= 0;#res := 1; 38950#factFINAL assume true; 38949#factEXIT >#66#return; 38946#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38939#factFINAL assume true; 38940#factEXIT >#66#return; 38930#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38933#factFINAL assume true; 38921#factEXIT >#66#return; 38920#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38919#factFINAL assume true; 38915#factEXIT >#76#return; 38885#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 38899#$Ultimate##0 ~n := #in~n; 38948#L25 assume !(~n <= 0); 38926#L26 call #t~ret0 := fact(~n - 1);< 38945#$Ultimate##0 ~n := #in~n; 38947#L25 assume ~n <= 0;#res := 1; 38944#factFINAL assume true; 38936#factEXIT >#66#return; 38931#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 38932#factFINAL assume true; 38883#factEXIT >#78#return; 38882#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; 38881#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 38880#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 38878#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 38816#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 38817#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 39089#L42-3 [2023-02-16 04:32:28,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:28,198 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 10 times [2023-02-16 04:32:28,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:28,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [778197881] [2023-02-16 04:32:28,198 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:28,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:28,205 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:28,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1964674562] [2023-02-16 04:32:28,205 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:32:28,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:28,206 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:28,217 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) [2023-02-16 04:32:28,232 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (149)] Waiting until timeout for monitored process [2023-02-16 04:32:28,280 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:32:28,280 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:28,280 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:28,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:28,312 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:28,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:28,312 INFO L85 PathProgramCache]: Analyzing trace with hash -401859366, now seen corresponding path program 12 times [2023-02-16 04:32:28,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:28,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1288296458] [2023-02-16 04:32:28,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:28,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:28,320 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:28,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [12651630] [2023-02-16 04:32:28,320 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:32:28,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:28,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:28,326 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) [2023-02-16 04:32:28,327 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (150)] Waiting until timeout for monitored process [2023-02-16 04:32:28,428 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2023-02-16 04:32:28,428 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:32:28,430 INFO L263 TraceCheckSpWp]: Trace formula consists of 344 conjuncts, 18 conjunts are in the unsatisfiable core [2023-02-16 04:32:28,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:28,583 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 85 proven. 371 refuted. 0 times theorem prover too weak. 2467 trivial. 0 not checked. [2023-02-16 04:32:28,583 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:29,082 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 85 proven. 375 refuted. 0 times theorem prover too weak. 2463 trivial. 0 not checked. [2023-02-16 04:32:29,083 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:29,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1288296458] [2023-02-16 04:32:29,083 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:29,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [12651630] [2023-02-16 04:32:29,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [12651630] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:29,083 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:29,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 17 [2023-02-16 04:32:29,083 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2136969857] [2023-02-16 04:32:29,083 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:29,085 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:29,085 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:29,085 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2023-02-16 04:32:29,085 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2023-02-16 04:32:29,086 INFO L87 Difference]: Start difference. First operand 937 states and 1486 transitions. cyclomatic complexity: 560 Second operand has 18 states, 15 states have (on average 2.933333333333333) internal successors, (44), 18 states have internal predecessors, (44), 10 states have call successors, (20), 1 states have call predecessors, (20), 4 states have return successors, (21), 10 states have call predecessors, (21), 10 states have call successors, (21) [2023-02-16 04:32:29,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:29,626 INFO L93 Difference]: Finished difference Result 1333 states and 2128 transitions. [2023-02-16 04:32:29,626 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1333 states and 2128 transitions. [2023-02-16 04:32:29,637 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 222 [2023-02-16 04:32:29,652 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1333 states to 1333 states and 2128 transitions. [2023-02-16 04:32:29,652 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 447 [2023-02-16 04:32:29,652 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 447 [2023-02-16 04:32:29,653 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1333 states and 2128 transitions. [2023-02-16 04:32:29,653 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:29,653 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1333 states and 2128 transitions. [2023-02-16 04:32:29,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1333 states and 2128 transitions. [2023-02-16 04:32:29,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1333 to 1225. [2023-02-16 04:32:29,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1225 states, 805 states have (on average 1.0695652173913044) internal successors, (861), 809 states have internal predecessors, (861), 353 states have call successors, (354), 52 states have call predecessors, (354), 67 states have return successors, (748), 363 states have call predecessors, (748), 353 states have call successors, (748) [2023-02-16 04:32:29,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1225 states to 1225 states and 1963 transitions. [2023-02-16 04:32:29,694 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1225 states and 1963 transitions. [2023-02-16 04:32:29,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-02-16 04:32:29,695 INFO L428 stractBuchiCegarLoop]: Abstraction has 1225 states and 1963 transitions. [2023-02-16 04:32:29,695 INFO L335 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2023-02-16 04:32:29,695 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1225 states and 1963 transitions. [2023-02-16 04:32:29,700 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 196 [2023-02-16 04:32:29,700 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:29,700 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:29,701 INFO L148 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] [2023-02-16 04:32:29,701 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [34, 34, 22, 22, 22, 22, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:32:29,701 INFO L748 eck$LassoCheckResult]: Stem: 42506#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 42441#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; 42442#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 42462#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; 42450#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 42451#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 43428#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; 42434#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42435#$Ultimate##0 ~n := #in~n; 42502#L25 assume ~n <= 0;#res := 1; 43571#factFINAL assume true; 43568#factEXIT >#68#return; 42499#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42500#$Ultimate##0 ~n := #in~n; 43452#L25 assume ~n <= 0;#res := 1; 43451#factFINAL assume true; 43450#factEXIT >#70#return; 42431#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42432#$Ultimate##0 ~n := #in~n; 43539#L25 assume ~n <= 0;#res := 1; 43538#factFINAL assume true; 43537#factEXIT >#72#return; 43536#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; 43535#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 43534#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 43533#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 43531#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; 42375#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42376#$Ultimate##0 ~n := #in~n; 43532#L25 assume !(~n <= 0); 43529#L26 call #t~ret0 := fact(~n - 1);< 43530#$Ultimate##0 ~n := #in~n; 43541#L25 assume ~n <= 0;#res := 1; 43540#factFINAL assume true; 43528#factEXIT >#66#return; 43527#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 43525#factFINAL assume true; 43521#factEXIT >#74#return; 43462#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 43508#$Ultimate##0 ~n := #in~n; 43545#L25 assume ~n <= 0;#res := 1; 43543#factFINAL assume true; 43461#factEXIT >#76#return; 43135#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 43137#$Ultimate##0 ~n := #in~n; 43551#L25 assume !(~n <= 0); 43548#L26 call #t~ret0 := fact(~n - 1);< 43549#$Ultimate##0 ~n := #in~n; 43552#L25 assume ~n <= 0;#res := 1; 43550#factFINAL assume true; 43547#factEXIT >#66#return; 43546#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 43544#factFINAL assume true; 43134#factEXIT >#78#return; 43136#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; 43465#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 42839#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42838#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 42656#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 42657#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 42622#L42-3 [2023-02-16 04:32:29,701 INFO L750 eck$LassoCheckResult]: Loop: 42622#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 42620#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; 42528#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42559#$Ultimate##0 ~n := #in~n; 42589#L25 assume !(~n <= 0); 42570#L26 call #t~ret0 := fact(~n - 1);< 42596#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42576#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42661#factFINAL assume true; 42569#factEXIT >#66#return; 42565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42564#factFINAL assume true; 42560#factEXIT >#68#return; 42519#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42559#$Ultimate##0 ~n := #in~n; 42589#L25 assume ~n <= 0;#res := 1; 42586#factFINAL assume true; 42582#factEXIT >#70#return; 42554#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42558#$Ultimate##0 ~n := #in~n; 42644#L25 assume !(~n <= 0); 42572#L26 call #t~ret0 := fact(~n - 1);< 42448#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42578#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42539#factFINAL assume true; 42557#factEXIT >#72#return; 42567#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; 42653#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 42651#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42648#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 42646#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; 42549#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42558#$Ultimate##0 ~n := #in~n; 42644#L25 assume !(~n <= 0); 42572#L26 call #t~ret0 := fact(~n - 1);< 42448#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42578#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42539#factFINAL assume true; 42557#factEXIT >#68#return; 42517#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42559#$Ultimate##0 ~n := #in~n; 42589#L25 assume !(~n <= 0); 42570#L26 call #t~ret0 := fact(~n - 1);< 42596#$Ultimate##0 ~n := #in~n; 42621#L25 assume ~n <= 0;#res := 1; 42600#factFINAL assume true; 42593#factEXIT >#66#return; 42591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42577#factFINAL assume true; 42515#factEXIT >#70#return; 42520#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42538#$Ultimate##0 ~n := #in~n; 42598#L25 assume !(~n <= 0); 42570#L26 call #t~ret0 := fact(~n - 1);< 42596#$Ultimate##0 ~n := #in~n; 42621#L25 assume ~n <= 0;#res := 1; 42600#factFINAL assume true; 42593#factEXIT >#66#return; 42591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42577#factFINAL assume true; 42515#factEXIT >#72#return; 42532#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; 42640#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 42639#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42637#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 42636#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; 42540#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42558#$Ultimate##0 ~n := #in~n; 42644#L25 assume !(~n <= 0); 42572#L26 call #t~ret0 := fact(~n - 1);< 42448#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42576#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42661#factFINAL assume true; 42569#factEXIT >#66#return; 42565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42564#factFINAL assume true; 42560#factEXIT >#68#return; 42543#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42558#$Ultimate##0 ~n := #in~n; 42644#L25 assume !(~n <= 0); 42572#L26 call #t~ret0 := fact(~n - 1);< 42448#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42576#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42661#factFINAL assume true; 42569#factEXIT >#66#return; 42565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42564#factFINAL assume true; 42560#factEXIT >#70#return; 42524#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42559#$Ultimate##0 ~n := #in~n; 42589#L25 assume ~n <= 0;#res := 1; 42586#factFINAL assume true; 42582#factEXIT >#72#return; 42583#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; 42588#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 42587#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42585#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 42584#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; 42553#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 42558#$Ultimate##0 ~n := #in~n; 42644#L25 assume !(~n <= 0); 42572#L26 call #t~ret0 := fact(~n - 1);< 42448#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42576#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42661#factFINAL assume true; 42569#factEXIT >#66#return; 42565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42564#factFINAL assume true; 42560#factEXIT >#74#return; 42521#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42559#$Ultimate##0 ~n := #in~n; 42589#L25 assume !(~n <= 0); 42570#L26 call #t~ret0 := fact(~n - 1);< 42596#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42623#L25 assume !(~n <= 0); 42574#L26 call #t~ret0 := fact(~n - 1);< 42635#$Ultimate##0 ~n := #in~n; 42638#L25 assume ~n <= 0;#res := 1; 42643#factFINAL assume true; 42642#factEXIT >#66#return; 42641#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42634#factFINAL assume true; 42579#factEXIT >#66#return; 42576#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42661#factFINAL assume true; 42569#factEXIT >#66#return; 42565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42564#factFINAL assume true; 42560#factEXIT >#76#return; 42530#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42538#$Ultimate##0 ~n := #in~n; 42598#L25 assume !(~n <= 0); 42570#L26 call #t~ret0 := fact(~n - 1);< 42596#$Ultimate##0 ~n := #in~n; 42621#L25 assume ~n <= 0;#res := 1; 42600#factFINAL assume true; 42593#factEXIT >#66#return; 42591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42577#factFINAL assume true; 42515#factEXIT >#78#return; 42514#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; 42513#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 42512#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42510#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 42458#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 42459#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 42622#L42-3 [2023-02-16 04:32:29,701 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:29,702 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 11 times [2023-02-16 04:32:29,702 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:29,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1267534443] [2023-02-16 04:32:29,702 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:29,702 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:29,707 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:29,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1912292196] [2023-02-16 04:32:29,708 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:32:29,708 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:29,708 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:29,717 INFO L229 MonitoredProcess]: Starting monitored process 151 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:29,733 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (151)] Waiting until timeout for monitored process [2023-02-16 04:32:29,784 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2023-02-16 04:32:29,784 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:29,784 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:29,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:29,812 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:29,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:29,813 INFO L85 PathProgramCache]: Analyzing trace with hash 1348129106, now seen corresponding path program 13 times [2023-02-16 04:32:29,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:29,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1244608926] [2023-02-16 04:32:29,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:29,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:29,821 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:29,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2047373106] [2023-02-16 04:32:29,821 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:32:29,821 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:29,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:29,827 INFO L229 MonitoredProcess]: Starting monitored process 152 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:29,828 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (152)] Waiting until timeout for monitored process [2023-02-16 04:32:29,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:29,925 INFO L263 TraceCheckSpWp]: Trace formula consists of 476 conjuncts, 17 conjunts are in the unsatisfiable core [2023-02-16 04:32:29,928 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:30,015 INFO L134 CoverageAnalysis]: Checked inductivity of 2743 backedges. 1042 proven. 64 refuted. 0 times theorem prover too weak. 1637 trivial. 0 not checked. [2023-02-16 04:32:30,016 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:30,610 INFO L134 CoverageAnalysis]: Checked inductivity of 2743 backedges. 40 proven. 790 refuted. 0 times theorem prover too weak. 1913 trivial. 0 not checked. [2023-02-16 04:32:30,610 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:30,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1244608926] [2023-02-16 04:32:30,610 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:30,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2047373106] [2023-02-16 04:32:30,611 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2047373106] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:30,611 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:30,611 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 16] total 19 [2023-02-16 04:32:30,611 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1619205684] [2023-02-16 04:32:30,611 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:32:30,611 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:32:30,611 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:32:30,612 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2023-02-16 04:32:30,612 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=281, Unknown=0, NotChecked=0, Total=342 [2023-02-16 04:32:30,612 INFO L87 Difference]: Start difference. First operand 1225 states and 1963 transitions. cyclomatic complexity: 749 Second operand has 19 states, 16 states have (on average 3.25) internal successors, (52), 16 states have internal predecessors, (52), 12 states have call successors, (25), 2 states have call predecessors, (25), 8 states have return successors, (28), 10 states have call predecessors, (28), 12 states have call successors, (28) [2023-02-16 04:32:31,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:32:31,078 INFO L93 Difference]: Finished difference Result 1874 states and 2934 transitions. [2023-02-16 04:32:31,078 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1874 states and 2934 transitions. [2023-02-16 04:32:31,090 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 287 [2023-02-16 04:32:31,106 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1874 states to 1869 states and 2929 transitions. [2023-02-16 04:32:31,106 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 627 [2023-02-16 04:32:31,107 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 627 [2023-02-16 04:32:31,107 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1869 states and 2929 transitions. [2023-02-16 04:32:31,107 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:32:31,107 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1869 states and 2929 transitions. [2023-02-16 04:32:31,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1869 states and 2929 transitions. [2023-02-16 04:32:31,141 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1869 to 1289. [2023-02-16 04:32:31,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1289 states, 836 states have (on average 1.0669856459330143) internal successors, (892), 839 states have internal predecessors, (892), 386 states have call successors, (387), 68 states have call predecessors, (387), 67 states have return successors, (786), 381 states have call predecessors, (786), 386 states have call successors, (786) [2023-02-16 04:32:31,149 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1289 states to 1289 states and 2065 transitions. [2023-02-16 04:32:31,150 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1289 states and 2065 transitions. [2023-02-16 04:32:31,150 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2023-02-16 04:32:31,150 INFO L428 stractBuchiCegarLoop]: Abstraction has 1289 states and 2065 transitions. [2023-02-16 04:32:31,151 INFO L335 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2023-02-16 04:32:31,151 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1289 states and 2065 transitions. [2023-02-16 04:32:31,155 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 201 [2023-02-16 04:32:31,155 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:32:31,155 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:32:31,156 INFO L148 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] [2023-02-16 04:32:31,156 INFO L149 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] [2023-02-16 04:32:31,157 INFO L748 eck$LassoCheckResult]: Stem: 46918#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 46857#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; 46858#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 46878#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; 46868#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 46869#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 47833#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; 46855#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46856#$Ultimate##0 ~n := #in~n; 47822#L25 assume ~n <= 0;#res := 1; 47821#factFINAL assume true; 47819#factEXIT >#68#return; 46898#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 46899#$Ultimate##0 ~n := #in~n; 47934#L25 assume ~n <= 0;#res := 1; 47933#factFINAL assume true; 47920#factEXIT >#70#return; 46851#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 46852#$Ultimate##0 ~n := #in~n; 47987#L25 assume ~n <= 0;#res := 1; 47986#factFINAL assume true; 47985#factEXIT >#72#return; 46873#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; 46874#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 46888#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 47984#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 46882#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; 46797#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46798#$Ultimate##0 ~n := #in~n; 48018#L25 assume !(~n <= 0); 47988#L26 call #t~ret0 := fact(~n - 1);< 48016#$Ultimate##0 ~n := #in~n; 48019#L25 assume ~n <= 0;#res := 1; 48017#factFINAL assume true; 48015#factEXIT >#66#return; 48014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 48013#factFINAL assume true; 48011#factEXIT >#74#return; 47990#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 48004#$Ultimate##0 ~n := #in~n; 48005#L25 assume ~n <= 0;#res := 1; 47989#factFINAL assume true; 47991#factEXIT >#76#return; 47971#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 48032#$Ultimate##0 ~n := #in~n; 48037#L25 assume !(~n <= 0); 48035#L26 call #t~ret0 := fact(~n - 1);< 48036#$Ultimate##0 ~n := #in~n; 48039#L25 assume ~n <= 0;#res := 1; 48038#factFINAL assume true; 48034#factEXIT >#66#return; 48033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 48031#factFINAL assume true; 47970#factEXIT >#78#return; 47969#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; 47968#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 47967#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 47541#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 47266#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 47265#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 47262#L42-3 [2023-02-16 04:32:31,157 INFO L750 eck$LassoCheckResult]: Loop: 47262#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 47001#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; 46926#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46970#$Ultimate##0 ~n := #in~n; 47000#L25 assume !(~n <= 0); 46982#L26 call #t~ret0 := fact(~n - 1);< 47014#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#68#return; 46937#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 46970#$Ultimate##0 ~n := #in~n; 47000#L25 assume ~n <= 0;#res := 1; 46999#factFINAL assume true; 46997#factEXIT >#70#return; 46960#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 46969#$Ultimate##0 ~n := #in~n; 47018#L25 assume !(~n <= 0); 46986#L26 call #t~ret0 := fact(~n - 1);< 47005#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#72#return; 47008#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; 47161#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 47160#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 47159#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 47158#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; 46955#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46969#$Ultimate##0 ~n := #in~n; 47018#L25 assume !(~n <= 0); 46986#L26 call #t~ret0 := fact(~n - 1);< 47005#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#68#return; 46939#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 46970#$Ultimate##0 ~n := #in~n; 47000#L25 assume !(~n <= 0); 46982#L26 call #t~ret0 := fact(~n - 1);< 47014#$Ultimate##0 ~n := #in~n; 47017#L25 assume ~n <= 0;#res := 1; 47016#factFINAL assume true; 47011#factEXIT >#66#return; 47010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47009#factFINAL assume true; 46925#factEXIT >#70#return; 46928#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 46949#$Ultimate##0 ~n := #in~n; 47015#L25 assume !(~n <= 0); 46982#L26 call #t~ret0 := fact(~n - 1);< 47014#$Ultimate##0 ~n := #in~n; 47017#L25 assume ~n <= 0;#res := 1; 47016#factFINAL assume true; 47011#factEXIT >#66#return; 47010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47009#factFINAL assume true; 46925#factEXIT >#72#return; 46943#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; 47157#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 47156#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 47155#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 47153#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; 46961#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46969#$Ultimate##0 ~n := #in~n; 47018#L25 assume !(~n <= 0); 46986#L26 call #t~ret0 := fact(~n - 1);< 47005#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#68#return; 46965#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 46969#$Ultimate##0 ~n := #in~n; 47018#L25 assume !(~n <= 0); 46986#L26 call #t~ret0 := fact(~n - 1);< 47005#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#70#return; 46935#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 46970#$Ultimate##0 ~n := #in~n; 47000#L25 assume ~n <= 0;#res := 1; 46999#factFINAL assume true; 46997#factEXIT >#72#return; 46998#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; 47075#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 47053#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 47029#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 46973#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; 46959#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 46969#$Ultimate##0 ~n := #in~n; 47018#L25 assume !(~n <= 0); 46986#L26 call #t~ret0 := fact(~n - 1);< 47005#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46991#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46995#factFINAL assume true; 46981#factEXIT >#66#return; 46980#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46979#factFINAL assume true; 46974#factEXIT >#74#return; 46938#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 46970#$Ultimate##0 ~n := #in~n; 47000#L25 assume !(~n <= 0); 46982#L26 call #t~ret0 := fact(~n - 1);< 47014#$Ultimate##0 ~n := #in~n; 47002#L25 assume !(~n <= 0); 46987#L26 call #t~ret0 := fact(~n - 1);< 47022#$Ultimate##0 ~n := #in~n; 47025#L25 assume ~n <= 0;#res := 1; 47023#factFINAL assume true; 47021#factEXIT >#66#return; 47020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47019#factFINAL assume true; 47003#factEXIT >#66#return; 46994#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 46950#factFINAL assume true; 46968#factEXIT >#76#return; 46927#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 46949#$Ultimate##0 ~n := #in~n; 47015#L25 assume !(~n <= 0); 46982#L26 call #t~ret0 := fact(~n - 1);< 47014#$Ultimate##0 ~n := #in~n; 47017#L25 assume ~n <= 0;#res := 1; 47016#factFINAL assume true; 47011#factEXIT >#66#return; 47010#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 47009#factFINAL assume true; 46925#factEXIT >#78#return; 46924#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; 46923#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 46922#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 46920#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 46875#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 46876#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 47262#L42-3 [2023-02-16 04:32:31,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:31,157 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 12 times [2023-02-16 04:32:31,158 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:31,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1905734774] [2023-02-16 04:32:31,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:31,158 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:31,162 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:31,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1393002809] [2023-02-16 04:32:31,163 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:32:31,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:31,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:31,169 INFO L229 MonitoredProcess]: Starting monitored process 153 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:31,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (153)] Waiting until timeout for monitored process [2023-02-16 04:32:31,243 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2023-02-16 04:32:31,243 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:31,243 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:31,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:31,266 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:31,267 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:31,267 INFO L85 PathProgramCache]: Analyzing trace with hash -1676318190, now seen corresponding path program 14 times [2023-02-16 04:32:31,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:31,267 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1031813380] [2023-02-16 04:32:31,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:31,267 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:31,274 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:31,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [744202133] [2023-02-16 04:32:31,274 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:32:31,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:31,275 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:31,281 INFO L229 MonitoredProcess]: Starting monitored process 154 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:31,297 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (154)] Waiting until timeout for monitored process [2023-02-16 04:32:31,438 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:32:31,439 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:32:31,439 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:32:31,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:32:31,552 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:32:31,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:32:31,552 INFO L85 PathProgramCache]: Analyzing trace with hash -1124751758, now seen corresponding path program 13 times [2023-02-16 04:32:31,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:32:31,553 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1068863480] [2023-02-16 04:32:31,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:32:31,553 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:32:31,564 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:32:31,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1655228269] [2023-02-16 04:32:31,564 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:32:31,564 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:32:31,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:32:31,572 INFO L229 MonitoredProcess]: Starting monitored process 155 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:32:31,573 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (155)] Waiting until timeout for monitored process [2023-02-16 04:32:31,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:32:31,712 INFO L263 TraceCheckSpWp]: Trace formula consists of 573 conjuncts, 9 conjunts are in the unsatisfiable core [2023-02-16 04:32:31,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:32:31,779 INFO L134 CoverageAnalysis]: Checked inductivity of 3289 backedges. 1436 proven. 10 refuted. 0 times theorem prover too weak. 1843 trivial. 0 not checked. [2023-02-16 04:32:31,780 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:32:32,034 INFO L134 CoverageAnalysis]: Checked inductivity of 3289 backedges. 120 proven. 237 refuted. 0 times theorem prover too weak. 2932 trivial. 0 not checked. [2023-02-16 04:32:32,034 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:32:32,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1068863480] [2023-02-16 04:32:32,034 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:32:32,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1655228269] [2023-02-16 04:32:32,035 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1655228269] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:32:32,035 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:32:32,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2023-02-16 04:32:32,035 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1371122753] [2023-02-16 04:32:32,035 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:02,644 WARN L233 SmtUtils]: Spent 29.36s on a formula simplification. DAG size of input: 252 DAG size of output: 224 (called from [L 278] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2023-02-16 04:33:27,780 WARN L233 SmtUtils]: Spent 25.11s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 800] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2023-02-16 04:33:36,071 WARN L233 SmtUtils]: Spent 8.23s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 800] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2023-02-16 04:33:36,561 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:33:36,561 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:33:36,561 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:33:36,561 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:33:36,561 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:33:36,561 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,561 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:33:36,562 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:33:36,562 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration24_Loop [2023-02-16 04:33:36,562 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:33:36,562 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:33:36,563 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,565 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,566 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,568 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,646 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,648 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,649 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,651 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,886 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:33:36,887 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:33:36,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:36,891 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) [2023-02-16 04:33:36,892 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 [2023-02-16 04:33:36,896 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:36,896 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:36,903 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:33:36,903 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: [] [2023-02-16 04:33:36,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (156)] Ended with exit code 0 [2023-02-16 04:33:36,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:36,908 INFO L229 MonitoredProcess]: Starting monitored process 157 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) [2023-02-16 04:33:36,910 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (157)] Waiting until timeout for monitored process [2023-02-16 04:33:36,911 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:36,911 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:36,918 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:33:36,918 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: [] [2023-02-16 04:33:36,921 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (157)] Ended with exit code 0 [2023-02-16 04:33:36,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:36,922 INFO L229 MonitoredProcess]: Starting monitored process 158 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) [2023-02-16 04:33:36,924 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (158)] Waiting until timeout for monitored process [2023-02-16 04:33:36,925 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:36,926 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:36,933 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:33:36,933 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: [] [2023-02-16 04:33:36,936 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (158)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:36,936 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,936 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:36,938 INFO L229 MonitoredProcess]: Starting monitored process 159 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) [2023-02-16 04:33:36,939 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (159)] Waiting until timeout for monitored process [2023-02-16 04:33:36,941 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:36,941 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:36,952 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (159)] Ended with exit code 0 [2023-02-16 04:33:36,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:36,953 INFO L229 MonitoredProcess]: Starting monitored process 160 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) [2023-02-16 04:33:36,955 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (160)] Waiting until timeout for monitored process [2023-02-16 04:33:36,956 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:33:36,956 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:36,978 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:33:36,981 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (160)] Ended with exit code 0 [2023-02-16 04:33:36,981 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:33:36,982 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:33:36,982 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:33:36,982 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:33:36,982 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:33:36,982 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:36,982 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:33:36,982 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:33:36,982 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration24_Loop [2023-02-16 04:33:36,982 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:33:36,982 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:33:36,983 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,985 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,986 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,988 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:36,989 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:37,051 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:37,053 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:37,055 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:37,289 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:33:37,289 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:33:37,289 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,289 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,292 INFO L229 MonitoredProcess]: Starting monitored process 161 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) [2023-02-16 04:33:37,294 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (161)] Waiting until timeout for monitored process [2023-02-16 04:33:37,296 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 [2023-02-16 04:33:37,301 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:37,301 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:37,301 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:37,301 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:37,301 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:37,302 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:37,302 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:37,303 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:37,305 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (161)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:37,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,306 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,307 INFO L229 MonitoredProcess]: Starting monitored process 162 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) [2023-02-16 04:33:37,308 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (162)] Waiting until timeout for monitored process [2023-02-16 04:33:37,309 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 [2023-02-16 04:33:37,315 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:37,315 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:37,315 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:37,315 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:37,315 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:37,316 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:37,316 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:37,316 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:37,319 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (162)] Ended with exit code 0 [2023-02-16 04:33:37,319 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,320 INFO L229 MonitoredProcess]: Starting monitored process 163 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) [2023-02-16 04:33:37,321 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (163)] Waiting until timeout for monitored process [2023-02-16 04:33:37,323 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 [2023-02-16 04:33:37,329 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:37,329 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:37,329 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:37,329 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:37,329 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:37,330 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:37,330 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:37,331 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:37,333 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (163)] Ended with exit code 0 [2023-02-16 04:33:37,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,335 INFO L229 MonitoredProcess]: Starting monitored process 164 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) [2023-02-16 04:33:37,335 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (164)] Waiting until timeout for monitored process [2023-02-16 04:33:37,338 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 [2023-02-16 04:33:37,344 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:37,344 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:37,344 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:37,344 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:37,344 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:37,345 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:37,345 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:37,346 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:37,348 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (164)] Ended with exit code 0 [2023-02-16 04:33:37,349 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,349 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,350 INFO L229 MonitoredProcess]: Starting monitored process 165 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) [2023-02-16 04:33:37,351 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (165)] Waiting until timeout for monitored process [2023-02-16 04:33:37,353 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 [2023-02-16 04:33:37,359 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:37,359 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:37,359 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:37,359 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:37,359 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:37,361 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:37,361 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:37,364 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:33:37,367 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2023-02-16 04:33:37,367 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2023-02-16 04:33:37,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:37,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:37,368 INFO L229 MonitoredProcess]: Starting monitored process 166 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) [2023-02-16 04:33:37,370 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (166)] Waiting until timeout for monitored process [2023-02-16 04:33:37,371 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:33:37,371 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:33:37,371 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:33:37,371 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 5 Supporting invariants [] [2023-02-16 04:33:37,374 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (165)] Ended with exit code 0 [2023-02-16 04:33:37,375 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:33:37,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:37,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:37,436 INFO L263 TraceCheckSpWp]: Trace formula consists of 371 conjuncts, 18 conjunts are in the unsatisfiable core [2023-02-16 04:33:37,438 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:37,488 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (166)] Ended with exit code 0 [2023-02-16 04:33:37,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:37,861 INFO L263 TraceCheckSpWp]: Trace formula consists of 1268 conjuncts, 72 conjunts are in the unsatisfiable core [2023-02-16 04:33:37,866 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:38,244 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 7 proven. 316 refuted. 0 times theorem prover too weak. 1760 trivial. 0 not checked. [2023-02-16 04:33:38,245 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 9 loop predicates [2023-02-16 04:33:38,245 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1289 states and 2065 transitions. cyclomatic complexity: 787 Second operand has 12 states, 11 states have (on average 4.2727272727272725) internal successors, (47), 12 states have internal predecessors, (47), 6 states have call successors, (16), 2 states have call predecessors, (16), 5 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2023-02-16 04:33:38,596 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1289 states and 2065 transitions. cyclomatic complexity: 787. Second operand has 12 states, 11 states have (on average 4.2727272727272725) internal successors, (47), 12 states have internal predecessors, (47), 6 states have call successors, (16), 2 states have call predecessors, (16), 5 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) Result 3164 states and 5137 transitions. Complement of second has 38 states. [2023-02-16 04:33:38,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 1 stem states 8 non-accepting loop states 1 accepting loop states [2023-02-16 04:33:38,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 4.2727272727272725) internal successors, (47), 12 states have internal predecessors, (47), 6 states have call successors, (16), 2 states have call predecessors, (16), 5 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2023-02-16 04:33:38,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2023-02-16 04:33:38,597 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 98 transitions. Stem has 60 letters. Loop has 191 letters. [2023-02-16 04:33:38,598 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:38,598 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 98 transitions. Stem has 251 letters. Loop has 191 letters. [2023-02-16 04:33:38,599 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:38,599 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 98 transitions. Stem has 60 letters. Loop has 382 letters. [2023-02-16 04:33:38,600 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:38,601 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3164 states and 5137 transitions. [2023-02-16 04:33:38,623 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 227 [2023-02-16 04:33:38,642 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3164 states to 1827 states and 2958 transitions. [2023-02-16 04:33:38,642 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 521 [2023-02-16 04:33:38,643 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 522 [2023-02-16 04:33:38,643 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1827 states and 2958 transitions. [2023-02-16 04:33:38,643 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:38,643 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1827 states and 2958 transitions. [2023-02-16 04:33:38,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1827 states and 2958 transitions. [2023-02-16 04:33:38,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1827 to 1803. [2023-02-16 04:33:38,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1803 states, 1172 states have (on average 1.068259385665529) internal successors, (1252), 1176 states have internal predecessors, (1252), 540 states have call successors, (541), 92 states have call predecessors, (541), 91 states have return successors, (1092), 534 states have call predecessors, (1092), 540 states have call successors, (1092) [2023-02-16 04:33:38,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1803 states to 1803 states and 2885 transitions. [2023-02-16 04:33:38,745 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1803 states and 2885 transitions. [2023-02-16 04:33:38,746 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:38,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2023-02-16 04:33:38,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2023-02-16 04:33:38,747 INFO L87 Difference]: Start difference. First operand 1803 states and 2885 transitions. Second operand has 10 states, 9 states have (on average 5.555555555555555) internal successors, (50), 10 states have internal predecessors, (50), 7 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (24), 5 states have call predecessors, (24), 7 states have call successors, (24) [2023-02-16 04:33:39,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:39,016 INFO L93 Difference]: Finished difference Result 2200 states and 3525 transitions. [2023-02-16 04:33:39,016 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2200 states and 3525 transitions. [2023-02-16 04:33:39,032 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 247 [2023-02-16 04:33:39,052 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2200 states to 1992 states and 3229 transitions. [2023-02-16 04:33:39,053 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 595 [2023-02-16 04:33:39,053 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 595 [2023-02-16 04:33:39,054 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1992 states and 3229 transitions. [2023-02-16 04:33:39,054 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:39,054 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1992 states and 3229 transitions. [2023-02-16 04:33:39,055 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1992 states and 3229 transitions. [2023-02-16 04:33:39,103 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1992 to 1989. [2023-02-16 04:33:39,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1989 states, 1275 states have (on average 1.0690196078431373) internal successors, (1363), 1282 states have internal predecessors, (1363), 623 states have call successors, (624), 92 states have call predecessors, (624), 91 states have return successors, (1239), 614 states have call predecessors, (1239), 623 states have call successors, (1239) [2023-02-16 04:33:39,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1989 states to 1989 states and 3226 transitions. [2023-02-16 04:33:39,128 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1989 states and 3226 transitions. [2023-02-16 04:33:39,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2023-02-16 04:33:39,129 INFO L428 stractBuchiCegarLoop]: Abstraction has 1989 states and 3226 transitions. [2023-02-16 04:33:39,129 INFO L335 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2023-02-16 04:33:39,130 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1989 states and 3226 transitions. [2023-02-16 04:33:39,137 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 247 [2023-02-16 04:33:39,137 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:39,137 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:39,138 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 16, 12, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:39,138 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [44, 44, 29, 29, 29, 29, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:39,139 INFO L748 eck$LassoCheckResult]: Stem: 57773#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 57706#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; 57707#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 57731#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; 57719#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 57720#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 58000#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; 57996#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57997#$Ultimate##0 ~n := #in~n; 58001#L25 assume ~n <= 0;#res := 1; 57999#factFINAL assume true; 57995#factEXIT >#68#return; 57990#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57991#$Ultimate##0 ~n := #in~n; 57998#L25 assume ~n <= 0;#res := 1; 57994#factFINAL assume true; 57989#factEXIT >#70#return; 57962#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57985#$Ultimate##0 ~n := #in~n; 57992#L25 assume ~n <= 0;#res := 1; 57988#factFINAL assume true; 57984#factEXIT >#72#return; 57981#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; 57979#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 57973#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57972#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57968#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; 57961#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57965#$Ultimate##0 ~n := #in~n; 58023#L25 assume !(~n <= 0); 57993#L26 call #t~ret0 := fact(~n - 1);< 58020#$Ultimate##0 ~n := #in~n; 58024#L25 assume ~n <= 0;#res := 1; 58022#factFINAL assume true; 58019#factEXIT >#66#return; 58016#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 58012#factFINAL assume true; 57960#factEXIT >#74#return; 57958#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57970#$Ultimate##0 ~n := #in~n; 58017#L25 assume ~n <= 0;#res := 1; 58013#factFINAL assume true; 58008#factEXIT >#76#return; 57921#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 58035#$Ultimate##0 ~n := #in~n; 58041#L25 assume !(~n <= 0); 58038#L26 call #t~ret0 := fact(~n - 1);< 58039#$Ultimate##0 ~n := #in~n; 58042#L25 assume ~n <= 0;#res := 1; 58040#factFINAL assume true; 58037#factEXIT >#66#return; 58036#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 58034#factFINAL assume true; 57920#factEXIT >#78#return; 57919#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; 57918#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 57917#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57916#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 57915#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 57912#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 57913#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 58766#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; 58683#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 58691#$Ultimate##0 ~n := #in~n; 58693#L25 assume ~n <= 0;#res := 1; 58692#factFINAL assume true; 58678#factEXIT >#68#return; 58548#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 58565#$Ultimate##0 ~n := #in~n; 58784#L25 assume ~n <= 0;#res := 1; 58773#factFINAL assume true; 58767#factEXIT >#70#return; 58512#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 58565#$Ultimate##0 ~n := #in~n; 58784#L25 assume ~n <= 0;#res := 1; 58773#factFINAL assume true; 58767#factEXIT >#72#return; 58768#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; 58799#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 58798#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 58797#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 58758#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; 58498#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 58663#$Ultimate##0 ~n := #in~n; 58649#L25 assume !(~n <= 0); 58570#L26 call #t~ret0 := fact(~n - 1);< 58614#$Ultimate##0 ~n := #in~n; 58610#L25 assume ~n <= 0;#res := 1; 58611#factFINAL assume true; 58567#factEXIT >#66#return; 58574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 58672#factFINAL assume true; 58664#factEXIT >#74#return; 58526#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 58565#$Ultimate##0 ~n := #in~n; 58784#L25 assume ~n <= 0;#res := 1; 58773#factFINAL assume true; 58767#factEXIT >#76#return; 58536#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 58663#$Ultimate##0 ~n := #in~n; 58649#L25 assume !(~n <= 0); 58570#L26 call #t~ret0 := fact(~n - 1);< 58614#$Ultimate##0 ~n := #in~n; 58610#L25 assume ~n <= 0;#res := 1; 58611#factFINAL assume true; 58567#factEXIT >#66#return; 58574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 58672#factFINAL assume true; 58664#factEXIT >#78#return; 58490#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; 58491#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 58486#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 58487#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 58421#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 58418#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 57866#L42-3 [2023-02-16 04:33:39,139 INFO L750 eck$LassoCheckResult]: Loop: 57866#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57856#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; 57804#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57813#$Ultimate##0 ~n := #in~n; 57835#L25 assume !(~n <= 0); 57836#L26 call #t~ret0 := fact(~n - 1);< 57861#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#68#return; 57795#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57813#$Ultimate##0 ~n := #in~n; 57835#L25 assume ~n <= 0;#res := 1; 57832#factFINAL assume true; 57828#factEXIT >#70#return; 57814#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57815#$Ultimate##0 ~n := #in~n; 57896#L25 assume !(~n <= 0); 57843#L26 call #t~ret0 := fact(~n - 1);< 57714#$Ultimate##0 ~n := #in~n; 57895#L25 assume !(~n <= 0); 57845#L26 call #t~ret0 := fact(~n - 1);< 57873#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#72#return; 57820#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; 57838#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 57837#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57834#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57833#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; 57797#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#68#return; 57802#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57813#$Ultimate##0 ~n := #in~n; 57835#L25 assume !(~n <= 0); 57836#L26 call #t~ret0 := fact(~n - 1);< 57861#$Ultimate##0 ~n := #in~n; 57899#L25 assume ~n <= 0;#res := 1; 57897#factFINAL assume true; 57857#factEXIT >#66#return; 57827#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57811#factFINAL assume true; 57812#factEXIT >#70#return; 57798#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57855#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57826#factFINAL assume true; 57780#factEXIT >#72#return; 57809#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; 57904#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 57903#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57901#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57898#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; 57799#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#68#return; 57788#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57855#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57826#factFINAL assume true; 57780#factEXIT >#70#return; 57801#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57810#$Ultimate##0 ~n := #in~n; 57905#L25 assume !(~n <= 0); 57836#L26 call #t~ret0 := fact(~n - 1);< 57861#$Ultimate##0 ~n := #in~n; 57899#L25 assume ~n <= 0;#res := 1; 57897#factFINAL assume true; 57857#factEXIT >#66#return; 57827#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57811#factFINAL assume true; 57812#factEXIT >#72#return; 57824#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; 57902#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 57900#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57893#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57892#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; 57785#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#68#return; 57782#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57855#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57826#factFINAL assume true; 57780#factEXIT >#70#return; 57791#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57813#$Ultimate##0 ~n := #in~n; 57835#L25 assume ~n <= 0;#res := 1; 57832#factFINAL assume true; 57828#factEXIT >#72#return; 57831#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; 57871#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 57870#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57869#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 57867#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; 57805#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 57816#$Ultimate##0 ~n := #in~n; 57906#L25 assume !(~n <= 0); 57847#L26 call #t~ret0 := fact(~n - 1);< 57865#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57852#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57894#factFINAL assume true; 57839#factEXIT >#66#return; 57825#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57822#factFINAL assume true; 57817#factEXIT >#74#return; 57783#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 57813#$Ultimate##0 ~n := #in~n; 57835#L25 assume !(~n <= 0); 57836#L26 call #t~ret0 := fact(~n - 1);< 57861#$Ultimate##0 ~n := #in~n; 57877#L25 assume !(~n <= 0); 57841#L26 call #t~ret0 := fact(~n - 1);< 57876#$Ultimate##0 ~n := #in~n; 57883#L25 assume ~n <= 0;#res := 1; 57882#factFINAL assume true; 57875#factEXIT >#66#return; 57874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57872#factFINAL assume true; 57862#factEXIT >#66#return; 57855#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57826#factFINAL assume true; 57780#factEXIT >#76#return; 57786#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 57810#$Ultimate##0 ~n := #in~n; 57905#L25 assume !(~n <= 0); 57836#L26 call #t~ret0 := fact(~n - 1);< 57861#$Ultimate##0 ~n := #in~n; 57899#L25 assume ~n <= 0;#res := 1; 57897#factFINAL assume true; 57857#factEXIT >#66#return; 57827#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 57811#factFINAL assume true; 57812#factEXIT >#78#return; 57779#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; 57778#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 57777#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 57775#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 57727#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 57728#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 57866#L42-3 [2023-02-16 04:33:39,139 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:39,140 INFO L85 PathProgramCache]: Analyzing trace with hash -370596716, now seen corresponding path program 14 times [2023-02-16 04:33:39,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:39,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [291530719] [2023-02-16 04:33:39,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:39,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:39,146 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:39,146 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1878925998] [2023-02-16 04:33:39,146 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:33:39,146 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:39,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:39,148 INFO L229 MonitoredProcess]: Starting monitored process 167 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:39,150 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (167)] Waiting until timeout for monitored process [2023-02-16 04:33:39,232 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:33:39,232 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:39,233 INFO L263 TraceCheckSpWp]: Trace formula consists of 279 conjuncts, 7 conjunts are in the unsatisfiable core [2023-02-16 04:33:39,235 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:39,283 INFO L134 CoverageAnalysis]: Checked inductivity of 533 backedges. 317 proven. 1 refuted. 0 times theorem prover too weak. 215 trivial. 0 not checked. [2023-02-16 04:33:39,283 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:39,383 INFO L134 CoverageAnalysis]: Checked inductivity of 533 backedges. 57 proven. 22 refuted. 0 times theorem prover too weak. 454 trivial. 0 not checked. [2023-02-16 04:33:39,383 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:39,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [291530719] [2023-02-16 04:33:39,383 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:39,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1878925998] [2023-02-16 04:33:39,384 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1878925998] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:39,384 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:39,384 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2023-02-16 04:33:39,384 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1354788478] [2023-02-16 04:33:39,384 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:39,385 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:33:39,385 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:39,386 INFO L85 PathProgramCache]: Analyzing trace with hash 1165609705, now seen corresponding path program 15 times [2023-02-16 04:33:39,386 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:39,386 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1057661954] [2023-02-16 04:33:39,386 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:39,386 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:39,393 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:39,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1178099982] [2023-02-16 04:33:39,394 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:33:39,394 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:39,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:39,395 INFO L229 MonitoredProcess]: Starting monitored process 168 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:39,421 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (168)] Waiting until timeout for monitored process [2023-02-16 04:33:39,518 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2023-02-16 04:33:39,519 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:39,520 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 24 conjunts are in the unsatisfiable core [2023-02-16 04:33:39,524 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:39,754 INFO L134 CoverageAnalysis]: Checked inductivity of 4661 backedges. 905 proven. 263 refuted. 0 times theorem prover too weak. 3493 trivial. 0 not checked. [2023-02-16 04:33:39,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:40,573 INFO L134 CoverageAnalysis]: Checked inductivity of 4661 backedges. 903 proven. 278 refuted. 0 times theorem prover too weak. 3480 trivial. 0 not checked. [2023-02-16 04:33:40,573 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:40,573 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1057661954] [2023-02-16 04:33:40,573 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:40,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1178099982] [2023-02-16 04:33:40,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1178099982] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:40,574 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:40,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 22] total 30 [2023-02-16 04:33:40,574 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1677817395] [2023-02-16 04:33:40,574 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:40,575 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:40,575 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:40,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2023-02-16 04:33:40,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2023-02-16 04:33:40,576 INFO L87 Difference]: Start difference. First operand 1989 states and 3226 transitions. cyclomatic complexity: 1256 Second operand has 8 states, 7 states have (on average 6.142857142857143) internal successors, (43), 8 states have internal predecessors, (43), 4 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (19), 3 states have call predecessors, (19), 4 states have call successors, (19) [2023-02-16 04:33:40,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:40,732 INFO L93 Difference]: Finished difference Result 1601 states and 2541 transitions. [2023-02-16 04:33:40,732 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1601 states and 2541 transitions. [2023-02-16 04:33:40,743 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 187 [2023-02-16 04:33:40,760 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1601 states to 1201 states and 1882 transitions. [2023-02-16 04:33:40,761 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 401 [2023-02-16 04:33:40,761 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 413 [2023-02-16 04:33:40,761 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1201 states and 1882 transitions. [2023-02-16 04:33:40,762 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:40,762 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1201 states and 1882 transitions. [2023-02-16 04:33:40,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1201 states and 1882 transitions. [2023-02-16 04:33:40,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1201 to 1201. [2023-02-16 04:33:40,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1201 states, 776 states have (on average 1.0644329896907216) internal successors, (826), 781 states have internal predecessors, (826), 358 states have call successors, (359), 68 states have call predecessors, (359), 67 states have return successors, (697), 351 states have call predecessors, (697), 358 states have call successors, (697) [2023-02-16 04:33:40,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1201 states to 1201 states and 1882 transitions. [2023-02-16 04:33:40,793 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1201 states and 1882 transitions. [2023-02-16 04:33:40,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-02-16 04:33:40,794 INFO L428 stractBuchiCegarLoop]: Abstraction has 1201 states and 1882 transitions. [2023-02-16 04:33:40,794 INFO L335 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2023-02-16 04:33:40,794 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1201 states and 1882 transitions. [2023-02-16 04:33:40,798 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 187 [2023-02-16 04:33:40,799 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:40,799 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:40,800 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [28, 28, 15, 13, 13, 13, 13, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:40,800 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:40,800 INFO L748 eck$LassoCheckResult]: Stem: 63778#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 63679#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; 63680#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 63716#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; 63779#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 63863#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 63861#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; 63857#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63858#$Ultimate##0 ~n := #in~n; 63862#L25 assume ~n <= 0;#res := 1; 63860#factFINAL assume true; 63856#factEXIT >#68#return; 63852#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63853#$Ultimate##0 ~n := #in~n; 63859#L25 assume ~n <= 0;#res := 1; 63855#factFINAL assume true; 63851#factEXIT >#70#return; 63824#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63849#$Ultimate##0 ~n := #in~n; 63854#L25 assume ~n <= 0;#res := 1; 63850#factFINAL assume true; 63848#factEXIT >#72#return; 63846#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; 63844#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 63841#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 63837#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 63836#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; 63825#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63826#$Ultimate##0 ~n := #in~n; 63847#L25 assume !(~n <= 0); 63834#L26 call #t~ret0 := fact(~n - 1);< 63835#$Ultimate##0 ~n := #in~n; 63843#L25 assume ~n <= 0;#res := 1; 63840#factFINAL assume true; 63833#factEXIT >#66#return; 63832#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63831#factFINAL assume true; 63823#factEXIT >#74#return; 63818#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63819#$Ultimate##0 ~n := #in~n; 63830#L25 assume ~n <= 0;#res := 1; 63822#factFINAL assume true; 63817#factEXIT >#76#return; 63812#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63815#$Ultimate##0 ~n := #in~n; 63839#L25 assume !(~n <= 0); 63828#L26 call #t~ret0 := fact(~n - 1);< 63829#$Ultimate##0 ~n := #in~n; 63842#L25 assume ~n <= 0;#res := 1; 63838#factFINAL assume true; 63827#factEXIT >#66#return; 63821#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63816#factFINAL assume true; 63811#factEXIT >#78#return; 63810#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; 63784#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 63785#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 63781#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 63714#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 63705#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 63706#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64160#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; 63797#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63972#$Ultimate##0 ~n := #in~n; 64008#L25 assume !(~n <= 0); 63989#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64036#L25 assume ~n <= 0;#res := 1; 64035#factFINAL assume true; 64027#factEXIT >#66#return; 64025#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64002#factFINAL assume true; 63788#factEXIT >#68#return; 63588#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63776#$Ultimate##0 ~n := #in~n; 64143#L25 assume ~n <= 0;#res := 1; 64142#factFINAL assume true; 63572#factEXIT >#70#return; 63596#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63613#$Ultimate##0 ~n := #in~n; 64072#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64036#L25 assume ~n <= 0;#res := 1; 64035#factFINAL assume true; 64027#factEXIT >#66#return; 64029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64136#factFINAL assume true; 64078#factEXIT >#72#return; 64081#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; 64166#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 64163#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64162#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64161#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; 63616#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63613#$Ultimate##0 ~n := #in~n; 64072#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64036#L25 assume ~n <= 0;#res := 1; 64035#factFINAL assume true; 64027#factEXIT >#66#return; 64029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64136#factFINAL assume true; 64078#factEXIT >#68#return; 63583#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63776#$Ultimate##0 ~n := #in~n; 64143#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64036#L25 assume ~n <= 0;#res := 1; 64035#factFINAL assume true; 64027#factEXIT >#66#return; 64029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64136#factFINAL assume true; 64078#factEXIT >#70#return; 63590#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63776#$Ultimate##0 ~n := #in~n; 64143#L25 assume ~n <= 0;#res := 1; 64142#factFINAL assume true; 63572#factEXIT >#72#return; 63598#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; 64210#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 64208#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64194#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64193#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; 63645#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63569#$Ultimate##0 ~n := #in~n; 64068#L25 assume !(~n <= 0); 63987#L26 call #t~ret0 := fact(~n - 1);< 64047#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64053#L25 assume ~n <= 0;#res := 1; 64052#factFINAL assume true; 64050#factEXIT >#66#return; 64049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64046#factFINAL assume true; 64042#factEXIT >#66#return; 63997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63998#factFINAL assume true; 63984#factEXIT >#66#return; 63995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63618#factFINAL assume true; 63649#factEXIT >#74#return; 63591#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63776#$Ultimate##0 ~n := #in~n; 64143#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64053#L25 assume ~n <= 0;#res := 1; 64052#factFINAL assume true; 64050#factEXIT >#66#return; 64049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64046#factFINAL assume true; 64042#factEXIT >#66#return; 63997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63998#factFINAL assume true; 63984#factEXIT >#66#return; 63995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63618#factFINAL assume true; 63649#factEXIT >#76#return; 63620#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63613#$Ultimate##0 ~n := #in~n; 64072#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64036#L25 assume ~n <= 0;#res := 1; 64035#factFINAL assume true; 64027#factEXIT >#66#return; 64029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64136#factFINAL assume true; 64078#factEXIT >#78#return; 63681#L30-8 [2023-02-16 04:33:40,801 INFO L750 eck$LassoCheckResult]: Loop: 63681#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; 63682#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 64201#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 64202#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 64198#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; 63625#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 63569#$Ultimate##0 ~n := #in~n; 64068#L25 assume !(~n <= 0); 63987#L26 call #t~ret0 := fact(~n - 1);< 64047#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64053#L25 assume ~n <= 0;#res := 1; 64052#factFINAL assume true; 64050#factEXIT >#66#return; 64049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64046#factFINAL assume true; 64042#factEXIT >#66#return; 63997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63998#factFINAL assume true; 63984#factEXIT >#66#return; 63995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63618#factFINAL assume true; 63649#factEXIT >#74#return; 63579#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 63776#$Ultimate##0 ~n := #in~n; 64143#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64053#L25 assume ~n <= 0;#res := 1; 64052#factFINAL assume true; 64050#factEXIT >#66#return; 64049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64046#factFINAL assume true; 64042#factEXIT >#66#return; 63997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63998#factFINAL assume true; 63984#factEXIT >#66#return; 63995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63618#factFINAL assume true; 63649#factEXIT >#76#return; 63642#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 63613#$Ultimate##0 ~n := #in~n; 64072#L25 assume !(~n <= 0); 63992#L26 call #t~ret0 := fact(~n - 1);< 64030#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64038#L25 assume !(~n <= 0); 63990#L26 call #t~ret0 := fact(~n - 1);< 64051#$Ultimate##0 ~n := #in~n; 64053#L25 assume ~n <= 0;#res := 1; 64052#factFINAL assume true; 64050#factEXIT >#66#return; 64049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 64046#factFINAL assume true; 64042#factEXIT >#66#return; 63997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63998#factFINAL assume true; 63984#factEXIT >#66#return; 63995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 63618#factFINAL assume true; 63649#factEXIT >#78#return; 63681#L30-8 [2023-02-16 04:33:40,801 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:40,801 INFO L85 PathProgramCache]: Analyzing trace with hash -1740880547, now seen corresponding path program 15 times [2023-02-16 04:33:40,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:40,801 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [627786425] [2023-02-16 04:33:40,801 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:40,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:40,808 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:40,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1105005396] [2023-02-16 04:33:40,809 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:33:40,809 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:40,809 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:40,816 INFO L229 MonitoredProcess]: Starting monitored process 169 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:40,817 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (169)] Waiting until timeout for monitored process [2023-02-16 04:33:40,926 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2023-02-16 04:33:40,926 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:40,927 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 8 conjunts are in the unsatisfiable core [2023-02-16 04:33:40,930 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:41,054 INFO L134 CoverageAnalysis]: Checked inductivity of 1718 backedges. 809 proven. 35 refuted. 0 times theorem prover too weak. 874 trivial. 0 not checked. [2023-02-16 04:33:41,054 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:41,248 INFO L134 CoverageAnalysis]: Checked inductivity of 1718 backedges. 4 proven. 35 refuted. 0 times theorem prover too weak. 1679 trivial. 0 not checked. [2023-02-16 04:33:41,248 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:41,248 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [627786425] [2023-02-16 04:33:41,249 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:41,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1105005396] [2023-02-16 04:33:41,249 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1105005396] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:41,249 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:41,249 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 14 [2023-02-16 04:33:41,249 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [677842279] [2023-02-16 04:33:41,249 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:41,250 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:33:41,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:41,250 INFO L85 PathProgramCache]: Analyzing trace with hash -1678442820, now seen corresponding path program 2 times [2023-02-16 04:33:41,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:41,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1835395316] [2023-02-16 04:33:41,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:41,250 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:41,253 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:41,253 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [625702736] [2023-02-16 04:33:41,253 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:33:41,253 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:41,253 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:41,257 INFO L229 MonitoredProcess]: Starting monitored process 170 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:41,258 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (170)] Waiting until timeout for monitored process [2023-02-16 04:33:41,325 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:33:41,325 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:41,325 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 21 conjunts are in the unsatisfiable core [2023-02-16 04:33:41,326 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:41,427 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 179 proven. 86 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2023-02-16 04:33:41,427 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:42,025 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 15 proven. 219 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2023-02-16 04:33:42,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:42,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1835395316] [2023-02-16 04:33:42,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:42,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [625702736] [2023-02-16 04:33:42,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [625702736] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:42,026 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:42,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 18] total 21 [2023-02-16 04:33:42,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1467300371] [2023-02-16 04:33:42,027 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:42,027 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:42,027 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:42,028 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2023-02-16 04:33:42,028 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2023-02-16 04:33:42,028 INFO L87 Difference]: Start difference. First operand 1201 states and 1882 transitions. cyclomatic complexity: 694 Second operand has 21 states, 18 states have (on average 2.7222222222222223) internal successors, (49), 20 states have internal predecessors, (49), 13 states have call successors, (15), 2 states have call predecessors, (15), 9 states have return successors, (18), 9 states have call predecessors, (18), 13 states have call successors, (18) [2023-02-16 04:33:42,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:42,518 INFO L93 Difference]: Finished difference Result 1772 states and 3047 transitions. [2023-02-16 04:33:42,518 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1772 states and 3047 transitions. [2023-02-16 04:33:42,529 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 342 [2023-02-16 04:33:42,547 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1772 states to 1769 states and 3044 transitions. [2023-02-16 04:33:42,547 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 611 [2023-02-16 04:33:42,548 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 614 [2023-02-16 04:33:42,548 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1769 states and 3044 transitions. [2023-02-16 04:33:42,548 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:42,548 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1769 states and 3044 transitions. [2023-02-16 04:33:42,550 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1769 states and 3044 transitions. [2023-02-16 04:33:42,586 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1769 to 1290. [2023-02-16 04:33:42,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1290 states, 823 states have (on average 1.0741190765492101) internal successors, (884), 825 states have internal predecessors, (884), 389 states have call successors, (390), 82 states have call predecessors, (390), 78 states have return successors, (1024), 382 states have call predecessors, (1024), 389 states have call successors, (1024) [2023-02-16 04:33:42,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1290 states to 1290 states and 2298 transitions. [2023-02-16 04:33:42,594 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1290 states and 2298 transitions. [2023-02-16 04:33:42,595 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2023-02-16 04:33:42,595 INFO L428 stractBuchiCegarLoop]: Abstraction has 1290 states and 2298 transitions. [2023-02-16 04:33:42,595 INFO L335 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2023-02-16 04:33:42,596 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1290 states and 2298 transitions. [2023-02-16 04:33:42,600 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 194 [2023-02-16 04:33:42,600 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:42,600 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:42,601 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [27, 27, 15, 12, 12, 12, 12, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:42,601 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [9, 9, 6, 6, 6, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:42,602 INFO L748 eck$LassoCheckResult]: Stem: 68269#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 68185#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; 68186#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 68212#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; 68270#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 68359#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68357#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; 68353#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68354#$Ultimate##0 ~n := #in~n; 68358#L25 assume ~n <= 0;#res := 1; 68356#factFINAL assume true; 68352#factEXIT >#68#return; 68348#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68349#$Ultimate##0 ~n := #in~n; 68355#L25 assume ~n <= 0;#res := 1; 68351#factFINAL assume true; 68347#factEXIT >#70#return; 68321#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68345#$Ultimate##0 ~n := #in~n; 68350#L25 assume ~n <= 0;#res := 1; 68346#factFINAL assume true; 68344#factEXIT >#72#return; 68342#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; 68340#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 68337#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 68333#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68332#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; 68320#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68322#$Ultimate##0 ~n := #in~n; 68343#L25 assume !(~n <= 0); 68330#L26 call #t~ret0 := fact(~n - 1);< 68331#$Ultimate##0 ~n := #in~n; 68339#L25 assume ~n <= 0;#res := 1; 68336#factFINAL assume true; 68329#factEXIT >#66#return; 68328#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68327#factFINAL assume true; 68319#factEXIT >#74#return; 68314#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68316#$Ultimate##0 ~n := #in~n; 68326#L25 assume ~n <= 0;#res := 1; 68318#factFINAL assume true; 68313#factEXIT >#76#return; 68307#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68311#$Ultimate##0 ~n := #in~n; 68335#L25 assume !(~n <= 0); 68324#L26 call #t~ret0 := fact(~n - 1);< 68325#$Ultimate##0 ~n := #in~n; 68338#L25 assume ~n <= 0;#res := 1; 68334#factFINAL assume true; 68323#factEXIT >#66#return; 68317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68312#factFINAL assume true; 68306#factEXIT >#78#return; 68304#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; 68524#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 68521#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 68273#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 68274#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 68200#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 68201#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68581#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; 68292#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68424#$Ultimate##0 ~n := #in~n; 68546#L25 assume !(~n <= 0); 68467#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68447#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68448#factFINAL assume true; 68279#factEXIT >#68#return; 68298#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68600#$Ultimate##0 ~n := #in~n; 68604#L25 assume ~n <= 0;#res := 1; 68536#factFINAL assume true; 68599#factEXIT >#70#return; 68172#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68173#$Ultimate##0 ~n := #in~n; 68552#L25 assume !(~n <= 0); 68476#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68619#factFINAL assume true; 68611#factEXIT >#72#return; 68613#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; 68646#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 68645#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 68644#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68643#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; 68176#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68173#$Ultimate##0 ~n := #in~n; 68552#L25 assume !(~n <= 0); 68476#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68619#factFINAL assume true; 68611#factEXIT >#68#return; 68595#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68600#$Ultimate##0 ~n := #in~n; 68604#L25 assume !(~n <= 0); 68476#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68619#factFINAL assume true; 68611#factEXIT >#70#return; 68596#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68600#$Ultimate##0 ~n := #in~n; 68604#L25 assume ~n <= 0;#res := 1; 68536#factFINAL assume true; 68599#factEXIT >#72#return; 68634#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; 68663#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 68657#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 68658#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68647#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; 68499#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68624#$Ultimate##0 ~n := #in~n; 68632#L25 assume !(~n <= 0); 68469#L26 call #t~ret0 := fact(~n - 1);< 68486#$Ultimate##0 ~n := #in~n; 68526#L25 assume !(~n <= 0); 68475#L26 call #t~ret0 := fact(~n - 1);< 68523#$Ultimate##0 ~n := #in~n; 68526#L25 assume !(~n <= 0); 68475#L26 call #t~ret0 := fact(~n - 1);< 68523#$Ultimate##0 ~n := #in~n; 68528#L25 assume ~n <= 0;#res := 1; 68525#factFINAL assume true; 68522#factEXIT >#66#return; 68520#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68498#factFINAL assume true; 68482#factEXIT >#66#return; 68485#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68493#factFINAL assume true; 68488#factEXIT >#66#return; 68490#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68606#factFINAL assume true; 68620#factEXIT >#74#return; 68530#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68566#$Ultimate##0 ~n := #in~n; 68529#L25 assume !(~n <= 0); 68193#L26 call #t~ret0 := fact(~n - 1);< 68487#$Ultimate##0 ~n := #in~n; 68547#L25 assume !(~n <= 0); 68191#L26 call #t~ret0 := fact(~n - 1);< 68195#$Ultimate##0 ~n := #in~n; 68528#L25 assume ~n <= 0;#res := 1; 68525#factFINAL assume true; 68522#factEXIT >#66#return; 68520#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68498#factFINAL assume true; 68482#factEXIT >#66#return; 68484#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68641#factFINAL assume true; 68637#factEXIT >#76#return; 68562#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68173#$Ultimate##0 ~n := #in~n; 68552#L25 assume !(~n <= 0); 68476#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68619#factFINAL assume true; 68611#factEXIT >#78#return; 68187#L30-8 [2023-02-16 04:33:42,602 INFO L750 eck$LassoCheckResult]: Loop: 68187#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; 68188#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 68213#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 68736#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 68607#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; 68506#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 68624#$Ultimate##0 ~n := #in~n; 68632#L25 assume !(~n <= 0); 68469#L26 call #t~ret0 := fact(~n - 1);< 68486#$Ultimate##0 ~n := #in~n; 68526#L25 assume !(~n <= 0); 68475#L26 call #t~ret0 := fact(~n - 1);< 68523#$Ultimate##0 ~n := #in~n; 68526#L25 assume !(~n <= 0); 68475#L26 call #t~ret0 := fact(~n - 1);< 68523#$Ultimate##0 ~n := #in~n; 68528#L25 assume ~n <= 0;#res := 1; 68525#factFINAL assume true; 68522#factEXIT >#66#return; 68520#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68498#factFINAL assume true; 68482#factEXIT >#66#return; 68485#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68493#factFINAL assume true; 68488#factEXIT >#66#return; 68490#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68606#factFINAL assume true; 68620#factEXIT >#74#return; 68534#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 68566#$Ultimate##0 ~n := #in~n; 68529#L25 assume !(~n <= 0); 68193#L26 call #t~ret0 := fact(~n - 1);< 68487#$Ultimate##0 ~n := #in~n; 68547#L25 assume !(~n <= 0); 68191#L26 call #t~ret0 := fact(~n - 1);< 68195#$Ultimate##0 ~n := #in~n; 68528#L25 assume ~n <= 0;#res := 1; 68525#factFINAL assume true; 68522#factEXIT >#66#return; 68520#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68498#factFINAL assume true; 68482#factEXIT >#66#return; 68484#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68641#factFINAL assume true; 68637#factEXIT >#76#return; 68564#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 68173#$Ultimate##0 ~n := #in~n; 68552#L25 assume !(~n <= 0); 68476#L26 call #t~ret0 := fact(~n - 1);< 68543#$Ultimate##0 ~n := #in~n; 68550#L25 assume ~n <= 0;#res := 1; 68548#factFINAL assume true; 68541#factEXIT >#66#return; 68542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 68619#factFINAL assume true; 68611#factEXIT >#78#return; 68187#L30-8 [2023-02-16 04:33:42,603 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:42,603 INFO L85 PathProgramCache]: Analyzing trace with hash 808595877, now seen corresponding path program 16 times [2023-02-16 04:33:42,603 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:42,603 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1536673156] [2023-02-16 04:33:42,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:42,603 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:42,609 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:42,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1472119800] [2023-02-16 04:33:42,610 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:33:42,610 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:42,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:42,614 INFO L229 MonitoredProcess]: Starting monitored process 171 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:42,614 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (171)] Waiting until timeout for monitored process [2023-02-16 04:33:42,730 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:33:42,731 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:42,732 INFO L263 TraceCheckSpWp]: Trace formula consists of 415 conjuncts, 8 conjunts are in the unsatisfiable core [2023-02-16 04:33:42,734 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:42,831 INFO L134 CoverageAnalysis]: Checked inductivity of 1586 backedges. 738 proven. 32 refuted. 0 times theorem prover too weak. 816 trivial. 0 not checked. [2023-02-16 04:33:42,831 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:42,997 INFO L134 CoverageAnalysis]: Checked inductivity of 1586 backedges. 18 proven. 32 refuted. 0 times theorem prover too weak. 1536 trivial. 0 not checked. [2023-02-16 04:33:42,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:42,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1536673156] [2023-02-16 04:33:42,998 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:42,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1472119800] [2023-02-16 04:33:42,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1472119800] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:42,998 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:42,998 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 12 [2023-02-16 04:33:42,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [201162982] [2023-02-16 04:33:42,998 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:42,999 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:33:42,999 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:42,999 INFO L85 PathProgramCache]: Analyzing trace with hash -544594300, now seen corresponding path program 3 times [2023-02-16 04:33:42,999 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:42,999 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [398714251] [2023-02-16 04:33:42,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:42,999 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:43,002 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:43,002 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1474157682] [2023-02-16 04:33:43,002 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:33:43,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:43,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:43,040 INFO L229 MonitoredProcess]: Starting monitored process 172 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:43,041 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (172)] Waiting until timeout for monitored process [2023-02-16 04:33:43,107 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2023-02-16 04:33:43,108 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:33:43,108 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:43,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:43,125 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:43,681 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:33:43,681 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:33:43,681 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:33:43,681 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:33:43,681 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-02-16 04:33:43,681 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:43,681 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:33:43,681 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:33:43,681 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration27_Loop [2023-02-16 04:33:43,681 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:33:43,681 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:33:43,682 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,683 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,703 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,705 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,829 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:33:43,829 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-02-16 04:33:43,829 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:43,829 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:43,832 INFO L229 MonitoredProcess]: Starting monitored process 173 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) [2023-02-16 04:33:43,832 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (173)] Waiting until timeout for monitored process [2023-02-16 04:33:43,834 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:43,834 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:43,840 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2023-02-16 04:33:43,840 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: [] [2023-02-16 04:33:43,843 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (173)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:43,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:43,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:43,844 INFO L229 MonitoredProcess]: Starting monitored process 174 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) [2023-02-16 04:33:43,853 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-02-16 04:33:43,853 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:43,856 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (174)] Waiting until timeout for monitored process [2023-02-16 04:33:43,866 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (174)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:43,867 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:43,867 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:43,868 INFO L229 MonitoredProcess]: Starting monitored process 175 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) [2023-02-16 04:33:43,869 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (175)] Waiting until timeout for monitored process [2023-02-16 04:33:43,871 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-02-16 04:33:43,871 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-02-16 04:33:43,899 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-02-16 04:33:43,902 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (175)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:43,902 INFO L210 LassoAnalysis]: Preferences: [2023-02-16 04:33:43,902 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-02-16 04:33:43,902 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-02-16 04:33:43,902 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-02-16 04:33:43,902 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-02-16 04:33:43,902 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:43,902 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-02-16 04:33:43,902 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-02-16 04:33:43,902 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration27_Loop [2023-02-16 04:33:43,902 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-02-16 04:33:43,902 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-02-16 04:33:43,903 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,905 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,906 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:43,926 INFO L117 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-02-16 04:33:44,034 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-02-16 04:33:44,034 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-02-16 04:33:44,035 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:44,035 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:44,036 INFO L229 MonitoredProcess]: Starting monitored process 176 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) [2023-02-16 04:33:44,037 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (176)] Waiting until timeout for monitored process [2023-02-16 04:33:44,039 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 [2023-02-16 04:33:44,045 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:44,045 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:44,045 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:44,045 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:44,045 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:44,045 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:44,045 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:44,046 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:44,049 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (176)] Ended with exit code 0 [2023-02-16 04:33:44,049 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:44,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:44,050 INFO L229 MonitoredProcess]: Starting monitored process 177 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) [2023-02-16 04:33:44,051 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (177)] Waiting until timeout for monitored process [2023-02-16 04:33:44,053 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 [2023-02-16 04:33:44,059 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:44,059 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:44,059 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:44,059 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:44,059 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:44,059 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:44,059 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:44,060 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2023-02-16 04:33:44,063 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (177)] Ended with exit code 0 [2023-02-16 04:33:44,063 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:44,063 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:44,064 INFO L229 MonitoredProcess]: Starting monitored process 178 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) [2023-02-16 04:33:44,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (178)] Waiting until timeout for monitored process [2023-02-16 04:33:44,067 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 [2023-02-16 04:33:44,073 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-02-16 04:33:44,073 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-02-16 04:33:44,073 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-02-16 04:33:44,073 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-02-16 04:33:44,073 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-02-16 04:33:44,075 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-02-16 04:33:44,075 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-02-16 04:33:44,078 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-02-16 04:33:44,082 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2023-02-16 04:33:44,082 INFO L444 ModelExtractionUtils]: 8 out of 12 variables were initially zero. Simplification set additionally 1 variables to zero. [2023-02-16 04:33:44,082 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-02-16 04:33:44,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:44,084 INFO L229 MonitoredProcess]: Starting monitored process 179 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) [2023-02-16 04:33:44,085 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (179)] Waiting until timeout for monitored process [2023-02-16 04:33:44,086 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-02-16 04:33:44,086 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-02-16 04:33:44,086 INFO L513 LassoAnalysis]: Proved termination. [2023-02-16 04:33:44,086 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~x~0#1, ULTIMATE.start_main_~k~0#1) = 1*ULTIMATE.start_main_~x~0#1 - 1*ULTIMATE.start_main_~k~0#1 Supporting invariants [] [2023-02-16 04:33:44,089 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (178)] Ended with exit code 0 [2023-02-16 04:33:44,089 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-02-16 04:33:44,098 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:44,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:44,234 INFO L263 TraceCheckSpWp]: Trace formula consists of 1171 conjuncts, 56 conjunts are in the unsatisfiable core [2023-02-16 04:33:44,238 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:44,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:44,976 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 22 conjunts are in the unsatisfiable core [2023-02-16 04:33:44,977 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:45,071 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2023-02-16 04:33:45,072 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 4 loop predicates [2023-02-16 04:33:45,072 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021 Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:45,143 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (179)] Forceful destruction successful, exit code 0 [2023-02-16 04:33:45,183 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021. Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) Result 1405 states and 2440 transitions. Complement of second has 13 states. [2023-02-16 04:33:45,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2023-02-16 04:33:45,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:45,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2023-02-16 04:33:45,184 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 51 transitions. Stem has 177 letters. Loop has 56 letters. [2023-02-16 04:33:45,184 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:45,184 INFO L681 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2023-02-16 04:33:45,193 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:45,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:45,352 INFO L263 TraceCheckSpWp]: Trace formula consists of 1171 conjuncts, 56 conjunts are in the unsatisfiable core [2023-02-16 04:33:45,356 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:46,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:46,094 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 22 conjunts are in the unsatisfiable core [2023-02-16 04:33:46,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:46,202 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2023-02-16 04:33:46,203 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 4 loop predicates [2023-02-16 04:33:46,203 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021 Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:46,303 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021. Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) Result 1403 states and 2433 transitions. Complement of second has 15 states. [2023-02-16 04:33:46,304 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 7 states 2 stem states 4 non-accepting loop states 1 accepting loop states [2023-02-16 04:33:46,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:46,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2023-02-16 04:33:46,305 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 50 transitions. Stem has 177 letters. Loop has 56 letters. [2023-02-16 04:33:46,305 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:46,305 INFO L681 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2023-02-16 04:33:46,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:46,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:46,498 INFO L263 TraceCheckSpWp]: Trace formula consists of 1171 conjuncts, 56 conjunts are in the unsatisfiable core [2023-02-16 04:33:46,501 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:47,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:47,199 INFO L263 TraceCheckSpWp]: Trace formula consists of 377 conjuncts, 22 conjunts are in the unsatisfiable core [2023-02-16 04:33:47,201 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:47,293 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2023-02-16 04:33:47,294 INFO L141 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 4 loop predicates [2023-02-16 04:33:47,294 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021 Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:47,434 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1290 states and 2298 transitions. cyclomatic complexity: 1021. Second operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) Result 2737 states and 4872 transitions. Complement of second has 14 states. [2023-02-16 04:33:47,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2023-02-16 04:33:47,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.285714285714286) internal successors, (30), 6 states have internal predecessors, (30), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2023-02-16 04:33:47,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2023-02-16 04:33:47,437 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 65 transitions. Stem has 177 letters. Loop has 56 letters. [2023-02-16 04:33:47,438 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:47,438 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 65 transitions. Stem has 233 letters. Loop has 56 letters. [2023-02-16 04:33:47,439 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:47,439 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 65 transitions. Stem has 177 letters. Loop has 112 letters. [2023-02-16 04:33:47,440 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-02-16 04:33:47,441 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2737 states and 4872 transitions. [2023-02-16 04:33:47,501 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 209 [2023-02-16 04:33:47,525 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2737 states to 2051 states and 3534 transitions. [2023-02-16 04:33:47,526 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 419 [2023-02-16 04:33:47,526 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 432 [2023-02-16 04:33:47,526 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2051 states and 3534 transitions. [2023-02-16 04:33:47,527 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:47,528 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2051 states and 3534 transitions. [2023-02-16 04:33:47,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2051 states and 3534 transitions. [2023-02-16 04:33:47,568 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2051 to 1823. [2023-02-16 04:33:47,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1823 states, 1164 states have (on average 1.088487972508591) internal successors, (1267), 1157 states have internal predecessors, (1267), 503 states have call successors, (504), 162 states have call predecessors, (504), 156 states have return successors, (1313), 503 states have call predecessors, (1313), 503 states have call successors, (1313) [2023-02-16 04:33:47,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1823 states to 1823 states and 3084 transitions. [2023-02-16 04:33:47,579 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1823 states and 3084 transitions. [2023-02-16 04:33:47,579 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:47,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2023-02-16 04:33:47,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2023-02-16 04:33:47,580 INFO L87 Difference]: Start difference. First operand 1823 states and 3084 transitions. Second operand has 12 states, 12 states have (on average 4.333333333333333) internal successors, (52), 12 states have internal predecessors, (52), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (26), 8 states have call predecessors, (26), 8 states have call successors, (26) [2023-02-16 04:33:47,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:47,727 INFO L93 Difference]: Finished difference Result 2016 states and 3452 transitions. [2023-02-16 04:33:47,727 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2016 states and 3452 transitions. [2023-02-16 04:33:47,741 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 183 [2023-02-16 04:33:47,766 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2016 states to 1978 states and 3408 transitions. [2023-02-16 04:33:47,766 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 368 [2023-02-16 04:33:47,767 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 368 [2023-02-16 04:33:47,767 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1978 states and 3408 transitions. [2023-02-16 04:33:47,767 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:47,767 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1978 states and 3408 transitions. [2023-02-16 04:33:47,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1978 states and 3408 transitions. [2023-02-16 04:33:47,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1978 to 1808. [2023-02-16 04:33:47,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1808 states, 1154 states have (on average 1.0892547660311958) internal successors, (1257), 1147 states have internal predecessors, (1257), 501 states have call successors, (501), 159 states have call predecessors, (501), 153 states have return successors, (1310), 501 states have call predecessors, (1310), 501 states have call successors, (1310) [2023-02-16 04:33:47,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1808 states to 1808 states and 3068 transitions. [2023-02-16 04:33:47,818 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1808 states and 3068 transitions. [2023-02-16 04:33:47,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-02-16 04:33:47,819 INFO L428 stractBuchiCegarLoop]: Abstraction has 1808 states and 3068 transitions. [2023-02-16 04:33:47,819 INFO L335 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2023-02-16 04:33:47,819 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1808 states and 3068 transitions. [2023-02-16 04:33:47,825 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 167 [2023-02-16 04:33:47,825 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:47,825 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:47,828 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [34, 34, 18, 16, 16, 16, 16, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:47,828 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [47, 47, 32, 32, 32, 32, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:47,828 INFO L748 eck$LassoCheckResult]: Stem: 82139#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 82084#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; 82085#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 82107#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; 82140#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82582#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82580#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; 82576#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82577#$Ultimate##0 ~n := #in~n; 82581#L25 assume ~n <= 0;#res := 1; 82579#factFINAL assume true; 82575#factEXIT >#68#return; 82571#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82572#$Ultimate##0 ~n := #in~n; 82578#L25 assume ~n <= 0;#res := 1; 82574#factFINAL assume true; 82570#factEXIT >#70#return; 82544#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82568#$Ultimate##0 ~n := #in~n; 82573#L25 assume ~n <= 0;#res := 1; 82569#factFINAL assume true; 82567#factEXIT >#72#return; 82566#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; 82564#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82561#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82556#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82553#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; 82545#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82546#$Ultimate##0 ~n := #in~n; 82563#L25 assume !(~n <= 0); 82559#L26 call #t~ret0 := fact(~n - 1);< 82560#$Ultimate##0 ~n := #in~n; 82565#L25 assume ~n <= 0;#res := 1; 82562#factFINAL assume true; 82558#factEXIT >#66#return; 82555#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82552#factFINAL assume true; 82543#factEXIT >#74#return; 82539#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82540#$Ultimate##0 ~n := #in~n; 82550#L25 assume ~n <= 0;#res := 1; 82542#factFINAL assume true; 82538#factEXIT >#76#return; 82534#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82535#$Ultimate##0 ~n := #in~n; 82551#L25 assume !(~n <= 0); 82548#L26 call #t~ret0 := fact(~n - 1);< 82549#$Ultimate##0 ~n := #in~n; 82557#L25 assume ~n <= 0;#res := 1; 82554#factFINAL assume true; 82547#factEXIT >#66#return; 82541#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82537#factFINAL assume true; 82533#factEXIT >#78#return; 82531#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; 82526#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82425#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82426#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82414#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; 82251#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82413#$Ultimate##0 ~n := #in~n; 82427#L25 assume !(~n <= 0); 82420#L26 call #t~ret0 := fact(~n - 1);< 82424#$Ultimate##0 ~n := #in~n; 82453#L25 assume !(~n <= 0); 82421#L26 call #t~ret0 := fact(~n - 1);< 82458#$Ultimate##0 ~n := #in~n; 82460#L25 assume ~n <= 0;#res := 1; 82459#factFINAL assume true; 82457#factEXIT >#66#return; 82454#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82451#factFINAL assume true; 82419#factEXIT >#66#return; 82416#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82411#factFINAL assume true; 82412#factEXIT >#74#return; 82469#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82470#$Ultimate##0 ~n := #in~n; 82472#L25 assume ~n <= 0;#res := 1; 82471#factFINAL assume true; 82468#factEXIT >#76#return; 82249#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82413#$Ultimate##0 ~n := #in~n; 82427#L25 assume !(~n <= 0); 82420#L26 call #t~ret0 := fact(~n - 1);< 82424#$Ultimate##0 ~n := #in~n; 82453#L25 assume !(~n <= 0); 82421#L26 call #t~ret0 := fact(~n - 1);< 82458#$Ultimate##0 ~n := #in~n; 82460#L25 assume ~n <= 0;#res := 1; 82459#factFINAL assume true; 82457#factEXIT >#66#return; 82454#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82451#factFINAL assume true; 82419#factEXIT >#66#return; 82416#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82411#factFINAL assume true; 82412#factEXIT >#78#return; 82086#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; 82087#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82108#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82146#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 82104#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 82096#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82097#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82126#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; 83037#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 83042#$Ultimate##0 ~n := #in~n; 83101#L25 assume !(~n <= 0); 82825#L26 call #t~ret0 := fact(~n - 1);< 82915#$Ultimate##0 ~n := #in~n; 82907#L25 assume ~n <= 0;#res := 1; 82917#factFINAL assume true; 82912#factEXIT >#66#return; 82914#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 83045#factFINAL assume true; 83028#factEXIT >#68#return; 82769#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82791#$Ultimate##0 ~n := #in~n; 83044#L25 assume ~n <= 0;#res := 1; 82911#factFINAL assume true; 83022#factEXIT >#70#return; 82770#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82143#$Ultimate##0 ~n := #in~n; 82929#L25 assume !(~n <= 0); 82833#L26 call #t~ret0 := fact(~n - 1);< 82915#$Ultimate##0 ~n := #in~n; 82907#L25 assume ~n <= 0;#res := 1; 82917#factFINAL assume true; 82912#factEXIT >#66#return; 82909#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82759#factFINAL assume true; 82790#factEXIT >#72#return; 82820#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; 82932#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82931#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82930#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82916#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; 82772#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82143#$Ultimate##0 ~n := #in~n; 82929#L25 assume !(~n <= 0); 82833#L26 call #t~ret0 := fact(~n - 1);< 82915#$Ultimate##0 ~n := #in~n; 82907#L25 assume ~n <= 0;#res := 1; 82917#factFINAL assume true; 82912#factEXIT >#66#return; 82909#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82759#factFINAL assume true; 82790#factEXIT >#68#return; 82776#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82791#$Ultimate##0 ~n := #in~n; 83044#L25 assume !(~n <= 0); 82833#L26 call #t~ret0 := fact(~n - 1);< 82915#$Ultimate##0 ~n := #in~n; 82907#L25 assume ~n <= 0;#res := 1; 82917#factFINAL assume true; 82912#factEXIT >#66#return; 82909#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82759#factFINAL assume true; 82790#factEXIT >#70#return; 82775#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82791#$Ultimate##0 ~n := #in~n; 83044#L25 assume ~n <= 0;#res := 1; 82911#factFINAL assume true; 83022#factEXIT >#72#return; 83025#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; 83300#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 83298#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 83297#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82934#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; 82797#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82813#$Ultimate##0 ~n := #in~n; 83212#L25 assume !(~n <= 0); 82826#L26 call #t~ret0 := fact(~n - 1);< 82838#$Ultimate##0 ~n := #in~n; 82902#L25 assume !(~n <= 0); 82831#L26 call #t~ret0 := fact(~n - 1);< 82896#$Ultimate##0 ~n := #in~n; 82902#L25 assume !(~n <= 0); 82831#L26 call #t~ret0 := fact(~n - 1);< 82896#$Ultimate##0 ~n := #in~n; 82904#L25 assume ~n <= 0;#res := 1; 82900#factFINAL assume true; 82893#factEXIT >#66#return; 82885#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82846#factFINAL assume true; 82823#factEXIT >#66#return; 82837#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 83121#factFINAL assume true; 83114#factEXIT >#66#return; 83117#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 83184#factFINAL assume true; 83185#factEXIT >#74#return; 82788#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82792#$Ultimate##0 ~n := #in~n; 82910#L25 assume !(~n <= 0); 82828#L26 call #t~ret0 := fact(~n - 1);< 82906#$Ultimate##0 ~n := #in~n; 82901#L25 assume !(~n <= 0); 82894#L26 call #t~ret0 := fact(~n - 1);< 82895#$Ultimate##0 ~n := #in~n; 82904#L25 assume ~n <= 0;#res := 1; 82900#factFINAL assume true; 82893#factEXIT >#66#return; 82885#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82846#factFINAL assume true; 82823#factEXIT >#66#return; 82815#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82814#factFINAL assume true; 82793#factEXIT >#76#return; 82789#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82143#$Ultimate##0 ~n := #in~n; 82929#L25 assume !(~n <= 0); 82833#L26 call #t~ret0 := fact(~n - 1);< 82915#$Ultimate##0 ~n := #in~n; 82907#L25 assume ~n <= 0;#res := 1; 82917#factFINAL assume true; 82912#factEXIT >#66#return; 82909#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82759#factFINAL assume true; 82790#factEXIT >#78#return; 82822#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; 82650#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82481#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82477#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 82105#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 82106#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82197#L42-3 [2023-02-16 04:33:47,829 INFO L750 eck$LassoCheckResult]: Loop: 82197#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82195#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; 82163#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82167#$Ultimate##0 ~n := #in~n; 82386#L25 assume !(~n <= 0); 82217#L26 call #t~ret0 := fact(~n - 1);< 82382#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82404#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82433#factFINAL assume true; 82191#factEXIT >#68#return; 82159#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82167#$Ultimate##0 ~n := #in~n; 82386#L25 assume ~n <= 0;#res := 1; 82168#factFINAL assume true; 82157#factEXIT >#70#return; 82165#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82375#$Ultimate##0 ~n := #in~n; 82397#L25 assume !(~n <= 0); 82234#L26 call #t~ret0 := fact(~n - 1);< 82396#$Ultimate##0 ~n := #in~n; 82430#L25 assume !(~n <= 0); 82218#L26 call #t~ret0 := fact(~n - 1);< 82235#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82398#factFINAL assume true; 82392#factEXIT >#66#return; 82391#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82384#factFINAL assume true; 82383#factEXIT >#72#return; 82194#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; 82374#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82373#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82372#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82371#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; 82182#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82398#factFINAL assume true; 82392#factEXIT >#66#return; 82391#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82384#factFINAL assume true; 82383#factEXIT >#68#return; 82158#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82167#$Ultimate##0 ~n := #in~n; 82386#L25 assume !(~n <= 0); 82217#L26 call #t~ret0 := fact(~n - 1);< 82382#$Ultimate##0 ~n := #in~n; 82246#L25 assume ~n <= 0;#res := 1; 82399#factFINAL assume true; 82379#factEXIT >#66#return; 82378#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82377#factFINAL assume true; 82257#factEXIT >#70#return; 82176#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82212#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82208#factFINAL assume true; 82169#factEXIT >#72#return; 82186#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; 82370#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82369#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82367#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82365#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; 82181#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82398#factFINAL assume true; 82392#factEXIT >#66#return; 82391#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82384#factFINAL assume true; 82383#factEXIT >#68#return; 82175#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82212#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82208#factFINAL assume true; 82169#factEXIT >#70#return; 82171#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82209#$Ultimate##0 ~n := #in~n; 82385#L25 assume !(~n <= 0); 82217#L26 call #t~ret0 := fact(~n - 1);< 82382#$Ultimate##0 ~n := #in~n; 82246#L25 assume ~n <= 0;#res := 1; 82399#factFINAL assume true; 82379#factEXIT >#66#return; 82378#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82377#factFINAL assume true; 82257#factEXIT >#72#return; 82166#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; 82254#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82211#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82199#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82196#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; 82151#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82404#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82433#factFINAL assume true; 82191#factEXIT >#68#return; 82174#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82212#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82208#factFINAL assume true; 82169#factEXIT >#70#return; 82160#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82167#$Ultimate##0 ~n := #in~n; 82386#L25 assume ~n <= 0;#res := 1; 82168#factFINAL assume true; 82157#factEXIT >#72#return; 82156#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; 82155#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 82154#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82153#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 82150#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; 82152#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 82188#$Ultimate##0 ~n := #in~n; 82431#L25 assume !(~n <= 0); 82221#L26 call #t~ret0 := fact(~n - 1);< 82225#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82242#L25 assume !(~n <= 0); 82219#L26 call #t~ret0 := fact(~n - 1);< 82239#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82410#factFINAL assume true; 82403#factEXIT >#66#return; 82404#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82433#factFINAL assume true; 82191#factEXIT >#74#return; 82162#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 82210#$Ultimate##0 ~n := #in~n; 82189#L25 assume !(~n <= 0); 82190#L26 call #t~ret0 := fact(~n - 1);< 82245#$Ultimate##0 ~n := #in~n; 82243#L25 assume !(~n <= 0); 82238#L26 call #t~ret0 := fact(~n - 1);< 82240#$Ultimate##0 ~n := #in~n; 82244#L25 assume ~n <= 0;#res := 1; 82241#factFINAL assume true; 82237#factEXIT >#66#return; 82236#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82226#factFINAL assume true; 82213#factEXIT >#66#return; 82212#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82208#factFINAL assume true; 82169#factEXIT >#76#return; 82183#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 82209#$Ultimate##0 ~n := #in~n; 82385#L25 assume !(~n <= 0); 82217#L26 call #t~ret0 := fact(~n - 1);< 82382#$Ultimate##0 ~n := #in~n; 82246#L25 assume ~n <= 0;#res := 1; 82399#factFINAL assume true; 82379#factEXIT >#66#return; 82378#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 82377#factFINAL assume true; 82257#factEXIT >#78#return; 82259#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; 82206#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 82205#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 82144#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 82145#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 82200#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 82197#L42-3 [2023-02-16 04:33:47,829 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:47,829 INFO L85 PathProgramCache]: Analyzing trace with hash -1840415744, now seen corresponding path program 17 times [2023-02-16 04:33:47,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:47,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1600558824] [2023-02-16 04:33:47,830 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:47,830 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:47,837 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:47,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [908493453] [2023-02-16 04:33:47,838 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:33:47,838 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:47,838 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:47,840 INFO L229 MonitoredProcess]: Starting monitored process 180 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:47,842 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (180)] Waiting until timeout for monitored process [2023-02-16 04:33:47,989 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) [2023-02-16 04:33:47,989 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:47,991 INFO L263 TraceCheckSpWp]: Trace formula consists of 506 conjuncts, 13 conjunts are in the unsatisfiable core [2023-02-16 04:33:47,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:48,083 INFO L134 CoverageAnalysis]: Checked inductivity of 2576 backedges. 582 proven. 100 refuted. 0 times theorem prover too weak. 1894 trivial. 0 not checked. [2023-02-16 04:33:48,083 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:48,394 INFO L134 CoverageAnalysis]: Checked inductivity of 2576 backedges. 298 proven. 121 refuted. 0 times theorem prover too weak. 2157 trivial. 0 not checked. [2023-02-16 04:33:48,394 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:48,394 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1600558824] [2023-02-16 04:33:48,394 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:48,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [908493453] [2023-02-16 04:33:48,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [908493453] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:48,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:48,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 15 [2023-02-16 04:33:48,395 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [623471410] [2023-02-16 04:33:48,395 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:48,395 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-02-16 04:33:48,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:48,395 INFO L85 PathProgramCache]: Analyzing trace with hash -1140687023, now seen corresponding path program 16 times [2023-02-16 04:33:48,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:48,395 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [585593205] [2023-02-16 04:33:48,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:48,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:48,402 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:48,402 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1566821984] [2023-02-16 04:33:48,403 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:33:48,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:48,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:48,410 INFO L229 MonitoredProcess]: Starting monitored process 181 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:48,412 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (181)] Waiting until timeout for monitored process [2023-02-16 04:33:48,536 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:33:48,536 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:48,538 INFO L263 TraceCheckSpWp]: Trace formula consists of 647 conjuncts, 22 conjunts are in the unsatisfiable core [2023-02-16 04:33:48,541 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:48,686 INFO L134 CoverageAnalysis]: Checked inductivity of 5381 backedges. 2548 proven. 203 refuted. 0 times theorem prover too weak. 2630 trivial. 0 not checked. [2023-02-16 04:33:48,686 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:49,704 INFO L134 CoverageAnalysis]: Checked inductivity of 5381 backedges. 166 proven. 1283 refuted. 0 times theorem prover too weak. 3932 trivial. 0 not checked. [2023-02-16 04:33:49,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:49,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [585593205] [2023-02-16 04:33:49,704 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:49,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1566821984] [2023-02-16 04:33:49,704 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1566821984] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:49,704 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:49,704 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 21] total 24 [2023-02-16 04:33:49,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [870692106] [2023-02-16 04:33:49,705 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:49,705 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:49,705 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:49,705 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2023-02-16 04:33:49,705 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=172, Unknown=0, NotChecked=0, Total=210 [2023-02-16 04:33:49,706 INFO L87 Difference]: Start difference. First operand 1808 states and 3068 transitions. cyclomatic complexity: 1278 Second operand has 15 states, 12 states have (on average 4.833333333333333) internal successors, (58), 15 states have internal predecessors, (58), 10 states have call successors, (22), 2 states have call predecessors, (22), 5 states have return successors, (22), 9 states have call predecessors, (22), 10 states have call successors, (22) [2023-02-16 04:33:50,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:50,114 INFO L93 Difference]: Finished difference Result 2269 states and 3909 transitions. [2023-02-16 04:33:50,115 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2269 states and 3909 transitions. [2023-02-16 04:33:50,127 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 165 [2023-02-16 04:33:50,143 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2269 states to 1856 states and 3129 transitions. [2023-02-16 04:33:50,143 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 318 [2023-02-16 04:33:50,144 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 318 [2023-02-16 04:33:50,144 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1856 states and 3129 transitions. [2023-02-16 04:33:50,144 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:50,144 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1856 states and 3129 transitions. [2023-02-16 04:33:50,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1856 states and 3129 transitions. [2023-02-16 04:33:50,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1856 to 1791. [2023-02-16 04:33:50,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1791 states, 1141 states have (on average 1.086765994741455) internal successors, (1240), 1137 states have internal predecessors, (1240), 500 states have call successors, (500), 145 states have call predecessors, (500), 150 states have return successors, (1287), 508 states have call predecessors, (1287), 500 states have call successors, (1287) [2023-02-16 04:33:50,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1791 states to 1791 states and 3027 transitions. [2023-02-16 04:33:50,189 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1791 states and 3027 transitions. [2023-02-16 04:33:50,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2023-02-16 04:33:50,190 INFO L428 stractBuchiCegarLoop]: Abstraction has 1791 states and 3027 transitions. [2023-02-16 04:33:50,190 INFO L335 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2023-02-16 04:33:50,190 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1791 states and 3027 transitions. [2023-02-16 04:33:50,195 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 165 [2023-02-16 04:33:50,195 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:50,196 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:50,197 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:50,197 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [48, 48, 33, 33, 33, 33, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:50,198 INFO L748 eck$LassoCheckResult]: Stem: 89400#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 89343#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; 89344#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 89363#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; 89401#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89773#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89772#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; 89768#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89769#$Ultimate##0 ~n := #in~n; 89774#L25 assume ~n <= 0;#res := 1; 89771#factFINAL assume true; 89767#factEXIT >#68#return; 89763#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89764#$Ultimate##0 ~n := #in~n; 89770#L25 assume ~n <= 0;#res := 1; 89766#factFINAL assume true; 89762#factEXIT >#70#return; 89737#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89760#$Ultimate##0 ~n := #in~n; 89765#L25 assume ~n <= 0;#res := 1; 89761#factFINAL assume true; 89759#factEXIT >#72#return; 89758#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; 89757#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89755#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89752#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89749#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; 89736#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89738#$Ultimate##0 ~n := #in~n; 89756#L25 assume !(~n <= 0); 89746#L26 call #t~ret0 := fact(~n - 1);< 89747#$Ultimate##0 ~n := #in~n; 89754#L25 assume ~n <= 0;#res := 1; 89751#factFINAL assume true; 89745#factEXIT >#66#return; 89744#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89742#factFINAL assume true; 89735#factEXIT >#74#return; 89731#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89732#$Ultimate##0 ~n := #in~n; 89748#L25 assume ~n <= 0;#res := 1; 89734#factFINAL assume true; 89730#factEXIT >#76#return; 89727#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89728#$Ultimate##0 ~n := #in~n; 89743#L25 assume !(~n <= 0); 89740#L26 call #t~ret0 := fact(~n - 1);< 89741#$Ultimate##0 ~n := #in~n; 89753#L25 assume ~n <= 0;#res := 1; 89750#factFINAL assume true; 89739#factEXIT >#66#return; 89733#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89729#factFINAL assume true; 89726#factEXIT >#78#return; 89712#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; 89705#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 89699#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89694#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89686#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; 89594#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89597#$Ultimate##0 ~n := #in~n; 89698#L25 assume !(~n <= 0); 89689#L26 call #t~ret0 := fact(~n - 1);< 89693#$Ultimate##0 ~n := #in~n; 89702#L25 assume !(~n <= 0); 89690#L26 call #t~ret0 := fact(~n - 1);< 89707#$Ultimate##0 ~n := #in~n; 89710#L25 assume ~n <= 0;#res := 1; 89708#factFINAL assume true; 89706#factEXIT >#66#return; 89700#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89701#factFINAL assume true; 89688#factEXIT >#66#return; 89684#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89685#factFINAL assume true; 89592#factEXIT >#74#return; 89596#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89681#$Ultimate##0 ~n := #in~n; 89683#L25 assume ~n <= 0;#res := 1; 89682#factFINAL assume true; 89679#factEXIT >#76#return; 89593#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89597#$Ultimate##0 ~n := #in~n; 89698#L25 assume !(~n <= 0); 89689#L26 call #t~ret0 := fact(~n - 1);< 89693#$Ultimate##0 ~n := #in~n; 89702#L25 assume !(~n <= 0); 89690#L26 call #t~ret0 := fact(~n - 1);< 89707#$Ultimate##0 ~n := #in~n; 89710#L25 assume ~n <= 0;#res := 1; 89708#factFINAL assume true; 89706#factEXIT >#66#return; 89700#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89701#factFINAL assume true; 89688#factEXIT >#66#return; 89684#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89685#factFINAL assume true; 89592#factEXIT >#78#return; 89589#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; 89572#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 89570#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89569#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 89361#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 89353#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89354#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89380#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; 90450#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 90458#$Ultimate##0 ~n := #in~n; 90490#L25 assume !(~n <= 0); 90277#L26 call #t~ret0 := fact(~n - 1);< 90306#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90283#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90503#factFINAL assume true; 90445#factEXIT >#68#return; 90100#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 90160#$Ultimate##0 ~n := #in~n; 90433#L25 assume ~n <= 0;#res := 1; 90384#factFINAL assume true; 90326#factEXIT >#70#return; 90099#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 90136#$Ultimate##0 ~n := #in~n; 90432#L25 assume !(~n <= 0); 90282#L26 call #t~ret0 := fact(~n - 1);< 90306#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90159#factFINAL assume true; 90098#factEXIT >#72#return; 90128#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; 90909#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 90899#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 90898#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 90897#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; 90101#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 90136#$Ultimate##0 ~n := #in~n; 90432#L25 assume !(~n <= 0); 90282#L26 call #t~ret0 := fact(~n - 1);< 90306#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90159#factFINAL assume true; 90098#factEXIT >#68#return; 90106#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 90160#$Ultimate##0 ~n := #in~n; 90433#L25 assume !(~n <= 0); 90282#L26 call #t~ret0 := fact(~n - 1);< 90306#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90159#factFINAL assume true; 90098#factEXIT >#70#return; 90109#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 90160#$Ultimate##0 ~n := #in~n; 90433#L25 assume ~n <= 0;#res := 1; 90384#factFINAL assume true; 90326#factEXIT >#72#return; 90328#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; 90841#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 90840#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 90839#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 90603#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; 90144#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 90220#$Ultimate##0 ~n := #in~n; 90395#L25 assume !(~n <= 0); 90390#L26 call #t~ret0 := fact(~n - 1);< 90394#$Ultimate##0 ~n := #in~n; 90310#L25 assume !(~n <= 0); 90389#L26 call #t~ret0 := fact(~n - 1);< 90409#$Ultimate##0 ~n := #in~n; 90439#L25 assume ~n <= 0;#res := 1; 90434#factFINAL assume true; 90406#factEXIT >#66#return; 90405#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90397#factFINAL assume true; 90385#factEXIT >#66#return; 90383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90286#factFINAL assume true; 90204#factEXIT >#74#return; 90119#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 90156#$Ultimate##0 ~n := #in~n; 90396#L25 assume !(~n <= 0); 90278#L26 call #t~ret0 := fact(~n - 1);< 90285#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90159#factFINAL assume true; 90098#factEXIT >#76#return; 90111#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 90136#$Ultimate##0 ~n := #in~n; 90432#L25 assume !(~n <= 0); 90282#L26 call #t~ret0 := fact(~n - 1);< 90306#$Ultimate##0 ~n := #in~n; 90309#L25 assume ~n <= 0;#res := 1; 90293#factFINAL assume true; 90276#factEXIT >#66#return; 90202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 90159#factFINAL assume true; 90098#factEXIT >#78#return; 90132#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; 90096#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 90586#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 90585#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 90584#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 90493#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89546#L42-3 [2023-02-16 04:33:50,198 INFO L750 eck$LassoCheckResult]: Loop: 89546#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89453#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; 89416#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89425#$Ultimate##0 ~n := #in~n; 89511#L25 assume !(~n <= 0); 89472#L26 call #t~ret0 := fact(~n - 1);< 89476#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89509#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89508#factFINAL assume true; 89481#factEXIT >#68#return; 89422#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89425#$Ultimate##0 ~n := #in~n; 89511#L25 assume ~n <= 0;#res := 1; 89426#factFINAL assume true; 89415#factEXIT >#70#return; 89424#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89484#$Ultimate##0 ~n := #in~n; 89567#L25 assume !(~n <= 0); 89487#L26 call #t~ret0 := fact(~n - 1);< 89495#$Ultimate##0 ~n := #in~n; 89539#L25 assume !(~n <= 0); 89488#L26 call #t~ret0 := fact(~n - 1);< 89522#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89493#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89542#factFINAL assume true; 89485#factEXIT >#66#return; 89483#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89482#factFINAL assume true; 89449#factEXIT >#72#return; 89450#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; 89480#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89479#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89478#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89477#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; 89440#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89493#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89542#factFINAL assume true; 89485#factEXIT >#66#return; 89483#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89482#factFINAL assume true; 89449#factEXIT >#68#return; 89421#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89425#$Ultimate##0 ~n := #in~n; 89511#L25 assume !(~n <= 0); 89472#L26 call #t~ret0 := fact(~n - 1);< 89476#$Ultimate##0 ~n := #in~n; 89537#L25 assume ~n <= 0;#res := 1; 89496#factFINAL assume true; 89470#factEXIT >#66#return; 89468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89467#factFINAL assume true; 89463#factEXIT >#70#return; 89435#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89527#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89619#factFINAL assume true; 89427#factEXIT >#72#return; 89445#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; 89632#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89628#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89622#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89621#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; 89432#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89509#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89508#factFINAL assume true; 89481#factEXIT >#68#return; 89430#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89527#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89619#factFINAL assume true; 89427#factEXIT >#70#return; 89438#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89466#$Ultimate##0 ~n := #in~n; 89510#L25 assume !(~n <= 0); 89472#L26 call #t~ret0 := fact(~n - 1);< 89476#$Ultimate##0 ~n := #in~n; 89537#L25 assume ~n <= 0;#res := 1; 89496#factFINAL assume true; 89470#factEXIT >#66#return; 89468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89467#factFINAL assume true; 89463#factEXIT >#72#return; 89423#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; 89460#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89458#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89456#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89454#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; 89409#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89493#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89542#factFINAL assume true; 89485#factEXIT >#66#return; 89483#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89482#factFINAL assume true; 89449#factEXIT >#68#return; 89429#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89527#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89619#factFINAL assume true; 89427#factEXIT >#70#return; 89417#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89425#$Ultimate##0 ~n := #in~n; 89511#L25 assume ~n <= 0;#res := 1; 89426#factFINAL assume true; 89415#factEXIT >#72#return; 89414#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; 89413#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 89412#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89411#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 89408#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; 89410#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 89446#$Ultimate##0 ~n := #in~n; 89530#L25 assume !(~n <= 0); 89491#L26 call #t~ret0 := fact(~n - 1);< 89521#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89523#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89513#factFINAL assume true; 89512#factEXIT >#66#return; 89493#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89542#factFINAL assume true; 89485#factEXIT >#66#return; 89483#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89482#factFINAL assume true; 89449#factEXIT >#74#return; 89419#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 89425#$Ultimate##0 ~n := #in~n; 89511#L25 assume !(~n <= 0); 89472#L26 call #t~ret0 := fact(~n - 1);< 89476#$Ultimate##0 ~n := #in~n; 89538#L25 assume !(~n <= 0); 89490#L26 call #t~ret0 := fact(~n - 1);< 89534#$Ultimate##0 ~n := #in~n; 89541#L25 assume ~n <= 0;#res := 1; 89540#factFINAL assume true; 89532#factEXIT >#66#return; 89531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89528#factFINAL assume true; 89524#factEXIT >#66#return; 89527#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89619#factFINAL assume true; 89427#factEXIT >#76#return; 89441#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 89466#$Ultimate##0 ~n := #in~n; 89510#L25 assume !(~n <= 0); 89472#L26 call #t~ret0 := fact(~n - 1);< 89476#$Ultimate##0 ~n := #in~n; 89537#L25 assume ~n <= 0;#res := 1; 89496#factFINAL assume true; 89470#factEXIT >#66#return; 89468#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 89467#factFINAL assume true; 89463#factEXIT >#78#return; 89465#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; 89346#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 89364#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 89403#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 89404#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 89551#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 89546#L42-3 [2023-02-16 04:33:50,199 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:50,199 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 18 times [2023-02-16 04:33:50,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:50,199 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1408981244] [2023-02-16 04:33:50,199 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:50,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:50,206 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:50,207 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [414179898] [2023-02-16 04:33:50,207 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:33:50,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:50,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:50,215 INFO L229 MonitoredProcess]: Starting monitored process 182 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:50,216 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (182)] Waiting until timeout for monitored process [2023-02-16 04:33:50,382 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 23 check-sat command(s) [2023-02-16 04:33:50,382 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:33:50,383 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:50,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:50,463 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:50,463 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:50,463 INFO L85 PathProgramCache]: Analyzing trace with hash -1159976119, now seen corresponding path program 17 times [2023-02-16 04:33:50,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:50,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1216021128] [2023-02-16 04:33:50,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:50,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:50,483 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:50,484 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [710375572] [2023-02-16 04:33:50,484 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:33:50,484 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:50,484 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:50,489 INFO L229 MonitoredProcess]: Starting monitored process 183 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:50,508 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (183)] Waiting until timeout for monitored process [2023-02-16 04:33:50,605 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 18 check-sat command(s) [2023-02-16 04:33:50,605 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:50,606 INFO L263 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 21 conjunts are in the unsatisfiable core [2023-02-16 04:33:50,608 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:50,709 INFO L134 CoverageAnalysis]: Checked inductivity of 5633 backedges. 3221 proven. 107 refuted. 0 times theorem prover too weak. 2305 trivial. 0 not checked. [2023-02-16 04:33:50,709 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:51,503 INFO L134 CoverageAnalysis]: Checked inductivity of 5633 backedges. 449 proven. 1148 refuted. 0 times theorem prover too weak. 4036 trivial. 0 not checked. [2023-02-16 04:33:51,503 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:51,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1216021128] [2023-02-16 04:33:51,504 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:51,504 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [710375572] [2023-02-16 04:33:51,504 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [710375572] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:51,504 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:51,504 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 18] total 21 [2023-02-16 04:33:51,504 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [580515353] [2023-02-16 04:33:51,504 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:51,505 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:51,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:51,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2023-02-16 04:33:51,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2023-02-16 04:33:51,506 INFO L87 Difference]: Start difference. First operand 1791 states and 3027 transitions. cyclomatic complexity: 1253 Second operand has 21 states, 18 states have (on average 3.2777777777777777) internal successors, (59), 18 states have internal predecessors, (59), 13 states have call successors, (28), 2 states have call predecessors, (28), 9 states have return successors, (33), 11 states have call predecessors, (33), 13 states have call successors, (33) [2023-02-16 04:33:52,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:52,097 INFO L93 Difference]: Finished difference Result 2883 states and 4929 transitions. [2023-02-16 04:33:52,097 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2883 states and 4929 transitions. [2023-02-16 04:33:52,118 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 353 [2023-02-16 04:33:52,174 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2883 states to 2874 states and 4920 transitions. [2023-02-16 04:33:52,174 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 524 [2023-02-16 04:33:52,175 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 524 [2023-02-16 04:33:52,175 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2874 states and 4920 transitions. [2023-02-16 04:33:52,175 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:52,175 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2874 states and 4920 transitions. [2023-02-16 04:33:52,177 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2874 states and 4920 transitions. [2023-02-16 04:33:52,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2874 to 1870. [2023-02-16 04:33:52,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1870 states, 1176 states have (on average 1.0841836734693877) internal successors, (1275), 1171 states have internal predecessors, (1275), 542 states have call successors, (542), 161 states have call predecessors, (542), 152 states have return successors, (1394), 537 states have call predecessors, (1394), 542 states have call successors, (1394) [2023-02-16 04:33:52,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1870 states to 1870 states and 3211 transitions. [2023-02-16 04:33:52,231 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1870 states and 3211 transitions. [2023-02-16 04:33:52,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-02-16 04:33:52,232 INFO L428 stractBuchiCegarLoop]: Abstraction has 1870 states and 3211 transitions. [2023-02-16 04:33:52,232 INFO L335 stractBuchiCegarLoop]: ======== Iteration 30 ============ [2023-02-16 04:33:52,232 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1870 states and 3211 transitions. [2023-02-16 04:33:52,238 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 169 [2023-02-16 04:33:52,238 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:52,238 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:52,240 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:52,240 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [49, 49, 34, 34, 34, 34, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:52,240 INFO L748 eck$LassoCheckResult]: Stem: 95909#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 95855#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; 95856#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 95876#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; 95910#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 96424#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96423#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; 96420#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96421#$Ultimate##0 ~n := #in~n; 96426#L25 assume ~n <= 0;#res := 1; 96425#factFINAL assume true; 96419#factEXIT >#68#return; 96415#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96416#$Ultimate##0 ~n := #in~n; 96422#L25 assume ~n <= 0;#res := 1; 96418#factFINAL assume true; 96414#factEXIT >#70#return; 96389#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96412#$Ultimate##0 ~n := #in~n; 96417#L25 assume ~n <= 0;#res := 1; 96413#factFINAL assume true; 96411#factEXIT >#72#return; 96410#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; 96409#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96408#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96405#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96401#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; 96388#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96390#$Ultimate##0 ~n := #in~n; 96400#L25 assume !(~n <= 0); 96398#L26 call #t~ret0 := fact(~n - 1);< 96399#$Ultimate##0 ~n := #in~n; 96407#L25 assume ~n <= 0;#res := 1; 96403#factFINAL assume true; 96397#factEXIT >#66#return; 96396#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96395#factFINAL assume true; 96387#factEXIT >#74#return; 96383#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96384#$Ultimate##0 ~n := #in~n; 96394#L25 assume ~n <= 0;#res := 1; 96386#factFINAL assume true; 96382#factEXIT >#76#return; 96379#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96380#$Ultimate##0 ~n := #in~n; 96404#L25 assume !(~n <= 0); 96392#L26 call #t~ret0 := fact(~n - 1);< 96393#$Ultimate##0 ~n := #in~n; 96406#L25 assume ~n <= 0;#res := 1; 96402#factFINAL assume true; 96391#factEXIT >#66#return; 96385#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96381#factFINAL assume true; 96378#factEXIT >#78#return; 96377#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; 96376#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 96374#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96372#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96337#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; 96332#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96336#$Ultimate##0 ~n := #in~n; 96367#L25 assume !(~n <= 0); 96349#L26 call #t~ret0 := fact(~n - 1);< 96351#$Ultimate##0 ~n := #in~n; 96358#L25 assume !(~n <= 0); 96347#L26 call #t~ret0 := fact(~n - 1);< 96363#$Ultimate##0 ~n := #in~n; 96365#L25 assume ~n <= 0;#res := 1; 96364#factFINAL assume true; 96361#factEXIT >#66#return; 96362#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96375#factFINAL assume true; 96373#factEXIT >#66#return; 96371#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96369#factFINAL assume true; 96368#factEXIT >#74#return; 96340#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96341#$Ultimate##0 ~n := #in~n; 96343#L25 assume ~n <= 0;#res := 1; 96342#factFINAL assume true; 96339#factEXIT >#76#return; 96330#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96336#$Ultimate##0 ~n := #in~n; 96367#L25 assume !(~n <= 0); 96349#L26 call #t~ret0 := fact(~n - 1);< 96351#$Ultimate##0 ~n := #in~n; 96358#L25 assume !(~n <= 0); 96347#L26 call #t~ret0 := fact(~n - 1);< 96363#$Ultimate##0 ~n := #in~n; 96365#L25 assume ~n <= 0;#res := 1; 96364#factFINAL assume true; 96361#factEXIT >#66#return; 96362#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96375#factFINAL assume true; 96373#factEXIT >#66#return; 96371#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96369#factFINAL assume true; 96368#factEXIT >#78#return; 96327#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; 96326#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 96325#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96324#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 96323#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 95865#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 95866#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95890#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; 97047#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 97049#$Ultimate##0 ~n := #in~n; 97069#L25 assume !(~n <= 0); 96895#L26 call #t~ret0 := fact(~n - 1);< 96945#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96897#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 97066#factFINAL assume true; 97062#factEXIT >#68#return; 96852#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96866#$Ultimate##0 ~n := #in~n; 96998#L25 assume ~n <= 0;#res := 1; 96957#factFINAL assume true; 96918#factEXIT >#70#return; 96826#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96499#$Ultimate##0 ~n := #in~n; 96997#L25 assume !(~n <= 0); 96894#L26 call #t~ret0 := fact(~n - 1);< 96945#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96865#factFINAL assume true; 96825#factEXIT >#72#return; 96854#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; 96924#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96923#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96922#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96921#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; 96498#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96499#$Ultimate##0 ~n := #in~n; 96997#L25 assume !(~n <= 0); 96894#L26 call #t~ret0 := fact(~n - 1);< 96945#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96865#factFINAL assume true; 96825#factEXIT >#68#return; 96836#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96866#$Ultimate##0 ~n := #in~n; 96998#L25 assume !(~n <= 0); 96894#L26 call #t~ret0 := fact(~n - 1);< 96945#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96865#factFINAL assume true; 96825#factEXIT >#70#return; 96843#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96866#$Ultimate##0 ~n := #in~n; 96998#L25 assume ~n <= 0;#res := 1; 96957#factFINAL assume true; 96918#factEXIT >#72#return; 96920#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; 96956#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96951#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96949#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96900#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; 96871#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 96886#$Ultimate##0 ~n := #in~n; 96916#L25 assume !(~n <= 0); 96909#L26 call #t~ret0 := fact(~n - 1);< 96914#$Ultimate##0 ~n := #in~n; 96971#L25 assume !(~n <= 0); 96907#L26 call #t~ret0 := fact(~n - 1);< 96955#$Ultimate##0 ~n := #in~n; 96994#L25 assume ~n <= 0;#res := 1; 96990#factFINAL assume true; 96952#factEXIT >#66#return; 96950#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96947#factFINAL assume true; 96905#factEXIT >#66#return; 96903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96889#factFINAL assume true; 96867#factEXIT >#74#return; 96849#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 96864#$Ultimate##0 ~n := #in~n; 96996#L25 assume !(~n <= 0); 96891#L26 call #t~ret0 := fact(~n - 1);< 96899#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96865#factFINAL assume true; 96825#factEXIT >#76#return; 96853#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96499#$Ultimate##0 ~n := #in~n; 96997#L25 assume !(~n <= 0); 96894#L26 call #t~ret0 := fact(~n - 1);< 96945#$Ultimate##0 ~n := #in~n; 96970#L25 assume ~n <= 0;#res := 1; 96931#factFINAL assume true; 96890#factEXIT >#66#return; 96888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96865#factFINAL assume true; 96825#factEXIT >#78#return; 96818#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; 96819#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 97694#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 97693#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 97692#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 97691#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 96319#L42-3 [2023-02-16 04:33:52,241 INFO L750 eck$LassoCheckResult]: Loop: 96319#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95966#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; 95932#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95936#$Ultimate##0 ~n := #in~n; 95938#L25 assume !(~n <= 0); 95939#L26 call #t~ret0 := fact(~n - 1);< 96060#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96012#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96024#factFINAL assume true; 96011#factEXIT >#66#return; 96009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96007#factFINAL assume true; 96006#factEXIT >#68#return; 95931#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95936#$Ultimate##0 ~n := #in~n; 95938#L25 assume ~n <= 0;#res := 1; 95937#factFINAL assume true; 95925#factEXIT >#70#return; 95935#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96008#$Ultimate##0 ~n := #in~n; 96154#L25 assume !(~n <= 0); 95992#L26 call #t~ret0 := fact(~n - 1);< 96015#$Ultimate##0 ~n := #in~n; 96146#L25 assume !(~n <= 0); 95974#L26 call #t~ret0 := fact(~n - 1);< 95994#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96012#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96024#factFINAL assume true; 96011#factEXIT >#66#return; 96009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96007#factFINAL assume true; 96006#factEXIT >#72#return; 95964#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; 96042#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96039#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96034#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96030#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; 95952#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96016#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96010#factFINAL assume true; 95961#factEXIT >#68#return; 95928#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95936#$Ultimate##0 ~n := #in~n; 95938#L25 assume !(~n <= 0); 95939#L26 call #t~ret0 := fact(~n - 1);< 96060#$Ultimate##0 ~n := #in~n; 96005#L25 assume ~n <= 0;#res := 1; 96061#factFINAL assume true; 96057#factEXIT >#66#return; 96056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96055#factFINAL assume true; 96053#factEXIT >#70#return; 95949#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95970#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95969#factFINAL assume true; 95940#factEXIT >#72#return; 95958#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; 96128#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96127#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96126#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96035#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; 95950#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96012#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96024#factFINAL assume true; 96011#factEXIT >#66#return; 96009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96007#factFINAL assume true; 96006#factEXIT >#68#return; 95945#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95970#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95969#factFINAL assume true; 95940#factEXIT >#70#return; 95941#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96025#$Ultimate##0 ~n := #in~n; 96022#L25 assume !(~n <= 0); 95939#L26 call #t~ret0 := fact(~n - 1);< 96060#$Ultimate##0 ~n := #in~n; 96005#L25 assume ~n <= 0;#res := 1; 96061#factFINAL assume true; 96057#factEXIT >#66#return; 96056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96055#factFINAL assume true; 96053#factEXIT >#72#return; 95934#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; 96038#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 96033#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 96032#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 96031#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; 95915#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96012#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96024#factFINAL assume true; 96011#factEXIT >#66#return; 96009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96007#factFINAL assume true; 96006#factEXIT >#68#return; 95951#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95970#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95969#factFINAL assume true; 95940#factEXIT >#70#return; 95926#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95936#$Ultimate##0 ~n := #in~n; 95938#L25 assume ~n <= 0;#res := 1; 95937#factFINAL assume true; 95925#factEXIT >#72#return; 95924#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; 95923#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95922#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95921#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95914#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; 95916#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95960#$Ultimate##0 ~n := #in~n; 96023#L25 assume !(~n <= 0); 95979#L26 call #t~ret0 := fact(~n - 1);< 95983#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95981#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96020#factFINAL assume true; 96017#factEXIT >#66#return; 96012#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96024#factFINAL assume true; 96011#factEXIT >#66#return; 96009#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96007#factFINAL assume true; 96006#factEXIT >#74#return; 95929#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95936#$Ultimate##0 ~n := #in~n; 95938#L25 assume !(~n <= 0); 95939#L26 call #t~ret0 := fact(~n - 1);< 96060#$Ultimate##0 ~n := #in~n; 96002#L25 assume !(~n <= 0); 95977#L26 call #t~ret0 := fact(~n - 1);< 95999#$Ultimate##0 ~n := #in~n; 96003#L25 assume ~n <= 0;#res := 1; 96000#factFINAL assume true; 95996#factEXIT >#66#return; 95995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95984#factFINAL assume true; 95971#factEXIT >#66#return; 95970#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95969#factFINAL assume true; 95940#factEXIT >#76#return; 95942#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 96025#$Ultimate##0 ~n := #in~n; 96022#L25 assume !(~n <= 0); 95939#L26 call #t~ret0 := fact(~n - 1);< 96060#$Ultimate##0 ~n := #in~n; 96005#L25 assume ~n <= 0;#res := 1; 96061#factFINAL assume true; 96057#factEXIT >#66#return; 96056#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 96055#factFINAL assume true; 96053#factEXIT >#78#return; 96054#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; 95858#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 95877#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95907#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 95873#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 95874#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 96319#L42-3 [2023-02-16 04:33:52,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:52,242 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 19 times [2023-02-16 04:33:52,242 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:52,242 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1308617050] [2023-02-16 04:33:52,242 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:52,242 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:52,253 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:52,254 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [220658552] [2023-02-16 04:33:52,254 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:33:52,254 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:52,254 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:52,261 INFO L229 MonitoredProcess]: Starting monitored process 184 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:52,280 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (184)] Waiting until timeout for monitored process [2023-02-16 04:33:52,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:52,415 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:52,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:52,514 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:52,514 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:52,514 INFO L85 PathProgramCache]: Analyzing trace with hash -326204223, now seen corresponding path program 18 times [2023-02-16 04:33:52,514 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:52,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187466619] [2023-02-16 04:33:52,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:52,515 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:52,523 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:52,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [97012865] [2023-02-16 04:33:52,523 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:33:52,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:52,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:52,537 INFO L229 MonitoredProcess]: Starting monitored process 185 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:52,538 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (185)] Waiting until timeout for monitored process [2023-02-16 04:33:52,689 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 17 check-sat command(s) [2023-02-16 04:33:52,689 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:52,692 INFO L263 TraceCheckSpWp]: Trace formula consists of 375 conjuncts, 22 conjunts are in the unsatisfiable core [2023-02-16 04:33:52,695 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:52,835 INFO L134 CoverageAnalysis]: Checked inductivity of 5891 backedges. 1655 proven. 66 refuted. 0 times theorem prover too weak. 4170 trivial. 0 not checked. [2023-02-16 04:33:52,835 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:53,729 INFO L134 CoverageAnalysis]: Checked inductivity of 5891 backedges. 1213 proven. 133 refuted. 0 times theorem prover too weak. 4545 trivial. 0 not checked. [2023-02-16 04:33:53,729 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:53,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1187466619] [2023-02-16 04:33:53,729 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:53,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [97012865] [2023-02-16 04:33:53,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [97012865] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:53,729 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:53,729 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 20] total 25 [2023-02-16 04:33:53,729 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1156993288] [2023-02-16 04:33:53,730 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:53,730 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:53,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:53,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2023-02-16 04:33:53,731 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=514, Unknown=0, NotChecked=0, Total=600 [2023-02-16 04:33:53,731 INFO L87 Difference]: Start difference. First operand 1870 states and 3211 transitions. cyclomatic complexity: 1358 Second operand has 25 states, 22 states have (on average 3.0) internal successors, (66), 24 states have internal predecessors, (66), 15 states have call successors, (24), 2 states have call predecessors, (24), 9 states have return successors, (27), 11 states have call predecessors, (27), 15 states have call successors, (27) [2023-02-16 04:33:54,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:54,694 INFO L93 Difference]: Finished difference Result 2823 states and 4742 transitions. [2023-02-16 04:33:54,694 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2823 states and 4742 transitions. [2023-02-16 04:33:54,707 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 308 [2023-02-16 04:33:54,730 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2823 states to 2796 states and 4715 transitions. [2023-02-16 04:33:54,730 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 483 [2023-02-16 04:33:54,731 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 483 [2023-02-16 04:33:54,731 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2796 states and 4715 transitions. [2023-02-16 04:33:54,731 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:54,731 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2796 states and 4715 transitions. [2023-02-16 04:33:54,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2796 states and 4715 transitions. [2023-02-16 04:33:54,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2796 to 1975. [2023-02-16 04:33:54,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1975 states, 1231 states have (on average 1.0844841592201462) internal successors, (1335), 1212 states have internal predecessors, (1335), 592 states have call successors, (592), 193 states have call predecessors, (592), 152 states have return successors, (1468), 569 states have call predecessors, (1468), 592 states have call successors, (1468) [2023-02-16 04:33:54,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1975 states to 1975 states and 3395 transitions. [2023-02-16 04:33:54,819 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1975 states and 3395 transitions. [2023-02-16 04:33:54,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2023-02-16 04:33:54,820 INFO L428 stractBuchiCegarLoop]: Abstraction has 1975 states and 3395 transitions. [2023-02-16 04:33:54,820 INFO L335 stractBuchiCegarLoop]: ======== Iteration 31 ============ [2023-02-16 04:33:54,820 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1975 states and 3395 transitions. [2023-02-16 04:33:54,827 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 169 [2023-02-16 04:33:54,827 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:54,827 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:54,829 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:54,829 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [46, 46, 31, 31, 31, 31, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:54,829 INFO L748 eck$LassoCheckResult]: Stem: 102522#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 102468#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; 102469#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 102490#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; 102523#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 103047#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103045#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; 103043#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 103044#$Ultimate##0 ~n := #in~n; 103048#L25 assume ~n <= 0;#res := 1; 103046#factFINAL assume true; 103042#factEXIT >#68#return; 103037#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 103038#$Ultimate##0 ~n := #in~n; 103041#L25 assume ~n <= 0;#res := 1; 103040#factFINAL assume true; 103036#factEXIT >#70#return; 103017#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 103034#$Ultimate##0 ~n := #in~n; 103039#L25 assume ~n <= 0;#res := 1; 103035#factFINAL assume true; 103033#factEXIT >#72#return; 103032#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; 103030#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 103027#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103023#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_~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; 103016#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 103019#$Ultimate##0 ~n := #in~n; 103029#L25 assume !(~n <= 0); 103025#L26 call #t~ret0 := fact(~n - 1);< 103026#$Ultimate##0 ~n := #in~n; 103031#L25 assume ~n <= 0;#res := 1; 103028#factFINAL assume true; 103024#factEXIT >#66#return; 103022#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103020#factFINAL assume true; 103015#factEXIT >#74#return; 103007#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 103011#$Ultimate##0 ~n := #in~n; 103012#L25 assume ~n <= 0;#res := 1; 103006#factFINAL assume true; 103008#factEXIT >#76#return; 102997#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102999#$Ultimate##0 ~n := #in~n; 103057#L25 assume !(~n <= 0); 103054#L26 call #t~ret0 := fact(~n - 1);< 103055#$Ultimate##0 ~n := #in~n; 103058#L25 assume ~n <= 0;#res := 1; 103056#factFINAL assume true; 103053#factEXIT >#66#return; 103052#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103051#factFINAL assume true; 102996#factEXIT >#78#return; 102998#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; 103090#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 103088#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103086#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103084#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; 102970#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102978#$Ultimate##0 ~n := #in~n; 102993#L25 assume !(~n <= 0); 102988#L26 call #t~ret0 := fact(~n - 1);< 102991#$Ultimate##0 ~n := #in~n; 103059#L25 assume !(~n <= 0); 102986#L26 call #t~ret0 := fact(~n - 1);< 103078#$Ultimate##0 ~n := #in~n; 103082#L25 assume ~n <= 0;#res := 1; 103079#factFINAL assume true; 103076#factEXIT >#66#return; 103077#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103091#factFINAL assume true; 103089#factEXIT >#66#return; 103087#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103085#factFINAL assume true; 103083#factEXIT >#74#return; 102974#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102975#$Ultimate##0 ~n := #in~n; 102977#L25 assume ~n <= 0;#res := 1; 102976#factFINAL assume true; 102973#factEXIT >#76#return; 102967#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102978#$Ultimate##0 ~n := #in~n; 102993#L25 assume !(~n <= 0); 102988#L26 call #t~ret0 := fact(~n - 1);< 102991#$Ultimate##0 ~n := #in~n; 103059#L25 assume !(~n <= 0); 102986#L26 call #t~ret0 := fact(~n - 1);< 103078#$Ultimate##0 ~n := #in~n; 103082#L25 assume ~n <= 0;#res := 1; 103079#factFINAL assume true; 103076#factEXIT >#66#return; 103077#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103091#factFINAL assume true; 103089#factEXIT >#66#return; 103087#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103085#factFINAL assume true; 103083#factEXIT >#78#return; 102965#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; 102964#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 102963#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102962#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 102488#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 102480#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 102481#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102505#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; 103667#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 103673#$Ultimate##0 ~n := #in~n; 103719#L25 assume !(~n <= 0); 103540#L26 call #t~ret0 := fact(~n - 1);< 103586#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103543#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103677#factFINAL assume true; 103658#factEXIT >#68#return; 103476#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 103503#$Ultimate##0 ~n := #in~n; 103592#L25 assume ~n <= 0;#res := 1; 103571#factFINAL assume true; 103563#factEXIT >#70#return; 103482#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 103141#$Ultimate##0 ~n := #in~n; 103593#L25 assume !(~n <= 0); 103535#L26 call #t~ret0 := fact(~n - 1);< 103586#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103530#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103502#factFINAL assume true; 103459#factEXIT >#72#return; 103498#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; 103695#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 103693#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103691#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103690#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; 103140#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 103141#$Ultimate##0 ~n := #in~n; 103593#L25 assume !(~n <= 0); 103535#L26 call #t~ret0 := fact(~n - 1);< 103586#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103530#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103502#factFINAL assume true; 103459#factEXIT >#68#return; 103475#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 103503#$Ultimate##0 ~n := #in~n; 103592#L25 assume !(~n <= 0); 103535#L26 call #t~ret0 := fact(~n - 1);< 103586#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103530#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103502#factFINAL assume true; 103459#factEXIT >#70#return; 103483#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 103503#$Ultimate##0 ~n := #in~n; 103592#L25 assume ~n <= 0;#res := 1; 103571#factFINAL assume true; 103563#factEXIT >#72#return; 103562#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; 103561#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 103559#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103558#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 103557#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; 103524#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 103528#$Ultimate##0 ~n := #in~n; 103556#L25 assume !(~n <= 0); 103546#L26 call #t~ret0 := fact(~n - 1);< 103554#$Ultimate##0 ~n := #in~n; 103686#L25 assume !(~n <= 0); 103548#L26 call #t~ret0 := fact(~n - 1);< 103682#$Ultimate##0 ~n := #in~n; 103687#L25 assume ~n <= 0;#res := 1; 103685#factFINAL assume true; 103680#factEXIT >#66#return; 103675#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103617#factFINAL assume true; 103545#factEXIT >#66#return; 103531#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103529#factFINAL assume true; 103505#factEXIT >#74#return; 103461#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 103504#$Ultimate##0 ~n := #in~n; 103591#L25 assume !(~n <= 0); 103537#L26 call #t~ret0 := fact(~n - 1);< 103555#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103530#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103502#factFINAL assume true; 103459#factEXIT >#76#return; 103462#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 103501#$Ultimate##0 ~n := #in~n; 103892#L25 assume !(~n <= 0); 103541#L26 call #t~ret0 := fact(~n - 1);< 103544#$Ultimate##0 ~n := #in~n; 103640#L25 assume ~n <= 0;#res := 1; 103599#factFINAL assume true; 103532#factEXIT >#66#return; 103530#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 103502#factFINAL assume true; 103459#factEXIT >#78#return; 103455#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; 103108#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 103104#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 103105#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 104401#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 104399#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 102956#L42-3 [2023-02-16 04:33:54,830 INFO L750 eck$LassoCheckResult]: Loop: 102956#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102570#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; 102542#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102546#$Ultimate##0 ~n := #in~n; 102638#L25 assume !(~n <= 0); 102589#L26 call #t~ret0 := fact(~n - 1);< 102658#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#68#return; 102537#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102546#$Ultimate##0 ~n := #in~n; 102638#L25 assume ~n <= 0;#res := 1; 102547#factFINAL assume true; 102536#factEXIT >#70#return; 102544#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102597#$Ultimate##0 ~n := #in~n; 102637#L25 assume !(~n <= 0); 102609#L26 call #t~ret0 := fact(~n - 1);< 102619#$Ultimate##0 ~n := #in~n; 102713#L25 assume !(~n <= 0); 102588#L26 call #t~ret0 := fact(~n - 1);< 102610#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#72#return; 102569#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; 102717#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 102716#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102715#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102639#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; 102565#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#68#return; 102538#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102546#$Ultimate##0 ~n := #in~n; 102638#L25 assume !(~n <= 0); 102589#L26 call #t~ret0 := fact(~n - 1);< 102658#$Ultimate##0 ~n := #in~n; 102630#L25 assume ~n <= 0;#res := 1; 102681#factFINAL assume true; 102651#factEXIT >#66#return; 102648#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102643#factFINAL assume true; 102640#factEXIT >#70#return; 102560#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102580#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102578#factFINAL assume true; 102571#factEXIT >#72#return; 102576#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; 102765#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 102708#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102709#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102705#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; 102556#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#68#return; 102563#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#70#return; 102552#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102644#$Ultimate##0 ~n := #in~n; 102660#L25 assume !(~n <= 0); 102589#L26 call #t~ret0 := fact(~n - 1);< 102658#$Ultimate##0 ~n := #in~n; 102630#L25 assume ~n <= 0;#res := 1; 102681#factFINAL assume true; 102651#factEXIT >#66#return; 102648#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102643#factFINAL assume true; 102640#factEXIT >#72#return; 102545#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; 102775#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 102725#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102718#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102582#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; 102530#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#68#return; 102554#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#70#return; 102541#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102546#$Ultimate##0 ~n := #in~n; 102638#L25 assume ~n <= 0;#res := 1; 102547#factFINAL assume true; 102536#factEXIT >#72#return; 102535#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; 102534#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 102533#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102532#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 102529#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; 102531#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 102577#$Ultimate##0 ~n := #in~n; 102714#L25 assume !(~n <= 0); 102584#L26 call #t~ret0 := fact(~n - 1);< 102608#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102628#L25 assume !(~n <= 0); 102591#L26 call #t~ret0 := fact(~n - 1);< 102623#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102624#factFINAL assume true; 102615#factEXIT >#66#return; 102613#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102596#factFINAL assume true; 102581#factEXIT >#74#return; 102543#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 102579#$Ultimate##0 ~n := #in~n; 102548#L25 assume !(~n <= 0); 102549#L26 call #t~ret0 := fact(~n - 1);< 102595#$Ultimate##0 ~n := #in~n; 102627#L25 assume !(~n <= 0); 102621#L26 call #t~ret0 := fact(~n - 1);< 102622#$Ultimate##0 ~n := #in~n; 102629#L25 assume ~n <= 0;#res := 1; 102626#factFINAL assume true; 102620#factEXIT >#66#return; 102614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102598#factFINAL assume true; 102583#factEXIT >#66#return; 102580#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102578#factFINAL assume true; 102571#factEXIT >#76#return; 102567#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 102645#$Ultimate##0 ~n := #in~n; 102659#L25 assume !(~n <= 0); 102654#L26 call #t~ret0 := fact(~n - 1);< 102657#$Ultimate##0 ~n := #in~n; 102630#L25 assume ~n <= 0;#res := 1; 102681#factFINAL assume true; 102651#factEXIT >#66#return; 102648#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 102643#factFINAL assume true; 102640#factEXIT >#78#return; 102642#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; 102471#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 102491#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 102520#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 102961#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 102958#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 102956#L42-3 [2023-02-16 04:33:54,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:54,831 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 20 times [2023-02-16 04:33:54,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:54,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31802664] [2023-02-16 04:33:54,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:54,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:54,840 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:54,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2011822164] [2023-02-16 04:33:54,840 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:33:54,840 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:54,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:54,844 INFO L229 MonitoredProcess]: Starting monitored process 186 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:54,867 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (186)] Waiting until timeout for monitored process [2023-02-16 04:33:55,046 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:33:55,046 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:33:55,046 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:55,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:55,129 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:55,129 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:55,129 INFO L85 PathProgramCache]: Analyzing trace with hash -1927122407, now seen corresponding path program 19 times [2023-02-16 04:33:55,129 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:55,129 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016252817] [2023-02-16 04:33:55,129 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:55,130 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:55,136 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:55,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1543921828] [2023-02-16 04:33:55,136 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:33:55,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:55,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:55,148 INFO L229 MonitoredProcess]: Starting monitored process 187 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:55,149 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (187)] Waiting until timeout for monitored process [2023-02-16 04:33:55,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:33:55,301 INFO L263 TraceCheckSpWp]: Trace formula consists of 635 conjuncts, 16 conjunts are in the unsatisfiable core [2023-02-16 04:33:55,303 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:55,393 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 2897 proven. 80 refuted. 0 times theorem prover too weak. 2158 trivial. 0 not checked. [2023-02-16 04:33:55,393 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:55,842 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 349 proven. 402 refuted. 0 times theorem prover too weak. 4384 trivial. 0 not checked. [2023-02-16 04:33:55,842 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:55,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2016252817] [2023-02-16 04:33:55,842 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:55,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1543921828] [2023-02-16 04:33:55,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1543921828] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:55,843 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:55,843 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 18 [2023-02-16 04:33:55,843 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [46163682] [2023-02-16 04:33:55,843 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:55,844 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:55,844 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:55,844 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2023-02-16 04:33:55,844 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=254, Unknown=0, NotChecked=0, Total=306 [2023-02-16 04:33:55,844 INFO L87 Difference]: Start difference. First operand 1975 states and 3395 transitions. cyclomatic complexity: 1437 Second operand has 18 states, 15 states have (on average 3.6) internal successors, (54), 18 states have internal predecessors, (54), 11 states have call successors, (28), 2 states have call predecessors, (28), 6 states have return successors, (29), 10 states have call predecessors, (29), 11 states have call successors, (29) [2023-02-16 04:33:56,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:56,291 INFO L93 Difference]: Finished difference Result 2254 states and 3800 transitions. [2023-02-16 04:33:56,291 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2254 states and 3800 transitions. [2023-02-16 04:33:56,301 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 193 [2023-02-16 04:33:56,318 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2254 states to 2253 states and 3797 transitions. [2023-02-16 04:33:56,318 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 426 [2023-02-16 04:33:56,318 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 426 [2023-02-16 04:33:56,319 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2253 states and 3797 transitions. [2023-02-16 04:33:56,319 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:56,319 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2253 states and 3797 transitions. [2023-02-16 04:33:56,320 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2253 states and 3797 transitions. [2023-02-16 04:33:56,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2253 to 2010. [2023-02-16 04:33:56,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2010 states, 1241 states have (on average 1.0846091861402094) internal successors, (1346), 1223 states have internal predecessors, (1346), 617 states have call successors, (617), 193 states have call predecessors, (617), 152 states have return successors, (1462), 593 states have call predecessors, (1462), 617 states have call successors, (1462) [2023-02-16 04:33:56,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2010 states to 2010 states and 3425 transitions. [2023-02-16 04:33:56,367 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2010 states and 3425 transitions. [2023-02-16 04:33:56,368 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2023-02-16 04:33:56,368 INFO L428 stractBuchiCegarLoop]: Abstraction has 2010 states and 3425 transitions. [2023-02-16 04:33:56,368 INFO L335 stractBuchiCegarLoop]: ======== Iteration 32 ============ [2023-02-16 04:33:56,368 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2010 states and 3425 transitions. [2023-02-16 04:33:56,374 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 171 [2023-02-16 04:33:56,375 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:56,375 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:56,377 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:56,377 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [45, 45, 30, 30, 30, 30, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:56,377 INFO L748 eck$LassoCheckResult]: Stem: 108525#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 108468#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; 108469#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 108491#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; 108479#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 108480#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109054#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; 109050#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109051#$Ultimate##0 ~n := #in~n; 109055#L25 assume ~n <= 0;#res := 1; 109053#factFINAL assume true; 109049#factEXIT >#68#return; 109045#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109046#$Ultimate##0 ~n := #in~n; 109052#L25 assume ~n <= 0;#res := 1; 109048#factFINAL assume true; 109044#factEXIT >#70#return; 109020#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109042#$Ultimate##0 ~n := #in~n; 109047#L25 assume ~n <= 0;#res := 1; 109043#factFINAL assume true; 109041#factEXIT >#72#return; 109040#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; 109039#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109038#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109037#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109023#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; 109021#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109022#$Ultimate##0 ~n := #in~n; 109057#L25 assume !(~n <= 0); 109030#L26 call #t~ret0 := fact(~n - 1);< 109031#$Ultimate##0 ~n := #in~n; 109058#L25 assume ~n <= 0;#res := 1; 109056#factFINAL assume true; 109029#factEXIT >#66#return; 109028#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109025#factFINAL assume true; 109019#factEXIT >#74#return; 109011#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109016#$Ultimate##0 ~n := #in~n; 109017#L25 assume ~n <= 0;#res := 1; 109010#factFINAL assume true; 109012#factEXIT >#76#return; 108974#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109027#$Ultimate##0 ~n := #in~n; 109036#L25 assume !(~n <= 0); 109034#L26 call #t~ret0 := fact(~n - 1);< 109035#$Ultimate##0 ~n := #in~n; 109061#L25 assume ~n <= 0;#res := 1; 109059#factFINAL assume true; 109033#factEXIT >#66#return; 109032#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109026#factFINAL assume true; 108973#factEXIT >#78#return; 108975#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; 109060#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 108963#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108964#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108953#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; 108719#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108721#$Ultimate##0 ~n := #in~n; 109018#L25 assume !(~n <= 0); 108899#L26 call #t~ret0 := fact(~n - 1);< 108967#$Ultimate##0 ~n := #in~n; 108972#L25 assume !(~n <= 0); 108901#L26 call #t~ret0 := fact(~n - 1);< 108999#$Ultimate##0 ~n := #in~n; 109063#L25 assume ~n <= 0;#res := 1; 109062#factFINAL assume true; 108997#factEXIT >#66#return; 108998#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109024#factFINAL assume true; 108898#factEXIT >#66#return; 108903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108744#factFINAL assume true; 108745#factEXIT >#74#return; 108979#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108980#$Ultimate##0 ~n := #in~n; 109106#L25 assume ~n <= 0;#res := 1; 109104#factFINAL assume true; 108978#factEXIT >#76#return; 108718#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108721#$Ultimate##0 ~n := #in~n; 109018#L25 assume !(~n <= 0); 108899#L26 call #t~ret0 := fact(~n - 1);< 108967#$Ultimate##0 ~n := #in~n; 108972#L25 assume !(~n <= 0); 108901#L26 call #t~ret0 := fact(~n - 1);< 108999#$Ultimate##0 ~n := #in~n; 109063#L25 assume ~n <= 0;#res := 1; 109062#factFINAL assume true; 108997#factEXIT >#66#return; 108998#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109024#factFINAL assume true; 108898#factEXIT >#66#return; 108903#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108744#factFINAL assume true; 108745#factEXIT >#78#return; 108470#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; 108471#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 108492#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108532#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 108487#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 108488#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 108513#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108514#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; 109536#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109539#$Ultimate##0 ~n := #in~n; 109786#L25 assume !(~n <= 0); 109546#L26 call #t~ret0 := fact(~n - 1);< 109706#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109528#factFINAL assume true; 109538#factEXIT >#68#return; 109617#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109636#$Ultimate##0 ~n := #in~n; 109909#L25 assume ~n <= 0;#res := 1; 109746#factFINAL assume true; 109674#factEXIT >#70#return; 109620#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109635#$Ultimate##0 ~n := #in~n; 109718#L25 assume !(~n <= 0); 109551#L26 call #t~ret0 := fact(~n - 1);< 109706#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109634#factFINAL assume true; 109596#factEXIT >#72#return; 109632#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; 109944#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109943#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); 109934#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; 109601#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109635#$Ultimate##0 ~n := #in~n; 109718#L25 assume !(~n <= 0); 109551#L26 call #t~ret0 := fact(~n - 1);< 109706#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109634#factFINAL assume true; 109596#factEXIT >#68#return; 109618#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109636#$Ultimate##0 ~n := #in~n; 109909#L25 assume !(~n <= 0); 109551#L26 call #t~ret0 := fact(~n - 1);< 109706#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109634#factFINAL assume true; 109596#factEXIT >#70#return; 109619#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109636#$Ultimate##0 ~n := #in~n; 109909#L25 assume ~n <= 0;#res := 1; 109746#factFINAL assume true; 109674#factEXIT >#72#return; 109673#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; 109671#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109670#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109669#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109668#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; 109642#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109667#$Ultimate##0 ~n := #in~n; 109744#L25 assume !(~n <= 0); 109696#L26 call #t~ret0 := fact(~n - 1);< 109725#$Ultimate##0 ~n := #in~n; 109756#L25 assume !(~n <= 0); 109698#L26 call #t~ret0 := fact(~n - 1);< 109742#$Ultimate##0 ~n := #in~n; 109752#L25 assume ~n <= 0;#res := 1; 109751#factFINAL assume true; 109740#factEXIT >#66#return; 109738#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109734#factFINAL assume true; 109730#factEXIT >#66#return; 109732#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109672#factFINAL assume true; 109638#factEXIT >#74#return; 109622#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109637#$Ultimate##0 ~n := #in~n; 109745#L25 assume !(~n <= 0); 109550#L26 call #t~ret0 := fact(~n - 1);< 109735#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109634#factFINAL assume true; 109596#factEXIT >#76#return; 109563#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109633#$Ultimate##0 ~n := #in~n; 109933#L25 assume !(~n <= 0); 109545#L26 call #t~ret0 := fact(~n - 1);< 109556#$Ultimate##0 ~n := #in~n; 109565#L25 assume ~n <= 0;#res := 1; 109557#factFINAL assume true; 109544#factEXIT >#66#return; 109554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109634#factFINAL assume true; 109596#factEXIT >#78#return; 109595#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; 109008#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 109009#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109929#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 109926#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 109925#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 108692#L42-3 [2023-02-16 04:33:56,378 INFO L750 eck$LassoCheckResult]: Loop: 108692#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108585#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; 108548#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108553#$Ultimate##0 ~n := #in~n; 108577#L25 assume !(~n <= 0); 108578#L26 call #t~ret0 := fact(~n - 1);< 108667#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#68#return; 108544#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108553#$Ultimate##0 ~n := #in~n; 108577#L25 assume ~n <= 0;#res := 1; 108554#factFINAL assume true; 108543#factEXIT >#70#return; 108551#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108607#$Ultimate##0 ~n := #in~n; 108650#L25 assume !(~n <= 0); 108624#L26 call #t~ret0 := fact(~n - 1);< 108634#$Ultimate##0 ~n := #in~n; 108647#L25 assume !(~n <= 0); 108601#L26 call #t~ret0 := fact(~n - 1);< 108626#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#72#return; 108583#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; 108689#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 108688#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108686#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108683#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; 108559#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#68#return; 108549#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108553#$Ultimate##0 ~n := #in~n; 108577#L25 assume !(~n <= 0); 108578#L26 call #t~ret0 := fact(~n - 1);< 108667#$Ultimate##0 ~n := #in~n; 108644#L25 assume ~n <= 0;#res := 1; 108668#factFINAL assume true; 108660#factEXIT >#66#return; 108659#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108656#factFINAL assume true; 108653#factEXIT >#70#return; 108564#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108590#factFINAL assume true; 108555#factEXIT >#72#return; 108575#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; 108921#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 108920#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108918#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108916#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; 108569#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#68#return; 108560#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108590#factFINAL assume true; 108555#factEXIT >#70#return; 108561#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108657#$Ultimate##0 ~n := #in~n; 108685#L25 assume !(~n <= 0); 108578#L26 call #t~ret0 := fact(~n - 1);< 108667#$Ultimate##0 ~n := #in~n; 108644#L25 assume ~n <= 0;#res := 1; 108668#factFINAL assume true; 108660#factEXIT >#66#return; 108659#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108656#factFINAL assume true; 108653#factEXIT >#72#return; 108552#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; 108893#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 108693#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108690#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108586#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; 108537#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#68#return; 108566#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#70#return; 108545#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108553#$Ultimate##0 ~n := #in~n; 108577#L25 assume ~n <= 0;#res := 1; 108554#factFINAL assume true; 108543#factEXIT >#72#return; 108542#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; 108541#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 108540#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108539#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 108536#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; 108538#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 108576#$Ultimate##0 ~n := #in~n; 108687#L25 assume !(~n <= 0); 108595#L26 call #t~ret0 := fact(~n - 1);< 108622#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108642#L25 assume !(~n <= 0); 108598#L26 call #t~ret0 := fact(~n - 1);< 108640#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108645#factFINAL assume true; 108630#factEXIT >#66#return; 108627#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108606#factFINAL assume true; 108592#factEXIT >#74#return; 108546#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 108588#$Ultimate##0 ~n := #in~n; 108589#L25 assume !(~n <= 0); 108600#L26 call #t~ret0 := fact(~n - 1);< 108605#$Ultimate##0 ~n := #in~n; 108643#L25 assume !(~n <= 0); 108639#L26 call #t~ret0 := fact(~n - 1);< 108641#$Ultimate##0 ~n := #in~n; 108649#L25 assume ~n <= 0;#res := 1; 108648#factFINAL assume true; 108638#factEXIT >#66#return; 108629#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108609#factFINAL assume true; 108593#factEXIT >#66#return; 108591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108590#factFINAL assume true; 108555#factEXIT >#76#return; 108572#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 108658#$Ultimate##0 ~n := #in~n; 108684#L25 assume !(~n <= 0); 108661#L26 call #t~ret0 := fact(~n - 1);< 108666#$Ultimate##0 ~n := #in~n; 108644#L25 assume ~n <= 0;#res := 1; 108668#factFINAL assume true; 108660#factEXIT >#66#return; 108659#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 108656#factFINAL assume true; 108653#factEXIT >#78#return; 108655#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; 108698#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 108697#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 108530#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 108531#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 108696#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 108692#L42-3 [2023-02-16 04:33:56,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:56,378 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 21 times [2023-02-16 04:33:56,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:56,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1458402817] [2023-02-16 04:33:56,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:56,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:56,393 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:56,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1890878834] [2023-02-16 04:33:56,394 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:33:56,394 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:56,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:56,405 INFO L229 MonitoredProcess]: Starting monitored process 188 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:56,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (188)] Waiting until timeout for monitored process [2023-02-16 04:33:56,609 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 23 check-sat command(s) [2023-02-16 04:33:56,609 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:33:56,610 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:56,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:56,705 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:56,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:56,706 INFO L85 PathProgramCache]: Analyzing trace with hash -992237087, now seen corresponding path program 20 times [2023-02-16 04:33:56,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:56,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [674298431] [2023-02-16 04:33:56,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:56,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:56,716 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:56,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [835197863] [2023-02-16 04:33:56,716 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:33:56,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:56,716 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:56,720 INFO L229 MonitoredProcess]: Starting monitored process 189 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:56,720 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (189)] Waiting until timeout for monitored process [2023-02-16 04:33:56,863 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:33:56,863 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:33:56,866 INFO L263 TraceCheckSpWp]: Trace formula consists of 623 conjuncts, 33 conjunts are in the unsatisfiable core [2023-02-16 04:33:56,868 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:33:57,065 INFO L134 CoverageAnalysis]: Checked inductivity of 4895 backedges. 1528 proven. 959 refuted. 0 times theorem prover too weak. 2408 trivial. 0 not checked. [2023-02-16 04:33:57,065 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:33:58,173 INFO L134 CoverageAnalysis]: Checked inductivity of 4895 backedges. 575 proven. 1209 refuted. 0 times theorem prover too weak. 3111 trivial. 0 not checked. [2023-02-16 04:33:58,173 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:33:58,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [674298431] [2023-02-16 04:33:58,173 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:33:58,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [835197863] [2023-02-16 04:33:58,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [835197863] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:33:58,173 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:33:58,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 24] total 28 [2023-02-16 04:33:58,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2023687504] [2023-02-16 04:33:58,173 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:33:58,174 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:33:58,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:33:58,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2023-02-16 04:33:58,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=647, Unknown=0, NotChecked=0, Total=756 [2023-02-16 04:33:58,175 INFO L87 Difference]: Start difference. First operand 2010 states and 3425 transitions. cyclomatic complexity: 1432 Second operand has 28 states, 23 states have (on average 3.130434782608696) internal successors, (72), 26 states have internal predecessors, (72), 18 states have call successors, (30), 2 states have call predecessors, (30), 9 states have return successors, (33), 14 states have call predecessors, (33), 18 states have call successors, (33) [2023-02-16 04:33:59,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:33:59,582 INFO L93 Difference]: Finished difference Result 2763 states and 4638 transitions. [2023-02-16 04:33:59,582 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2763 states and 4638 transitions. [2023-02-16 04:33:59,595 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 223 [2023-02-16 04:33:59,617 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2763 states to 2752 states and 4615 transitions. [2023-02-16 04:33:59,617 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 529 [2023-02-16 04:33:59,618 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 529 [2023-02-16 04:33:59,618 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2752 states and 4615 transitions. [2023-02-16 04:33:59,618 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:33:59,618 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2752 states and 4615 transitions. [2023-02-16 04:33:59,620 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2752 states and 4615 transitions. [2023-02-16 04:33:59,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2752 to 2188. [2023-02-16 04:33:59,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2188 states, 1396 states have (on average 1.0716332378223496) internal successors, (1496), 1389 states have internal predecessors, (1496), 636 states have call successors, (636), 179 states have call predecessors, (636), 156 states have return successors, (1478), 619 states have call predecessors, (1478), 636 states have call successors, (1478) [2023-02-16 04:33:59,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2188 states to 2188 states and 3610 transitions. [2023-02-16 04:33:59,679 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2188 states and 3610 transitions. [2023-02-16 04:33:59,679 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2023-02-16 04:33:59,680 INFO L428 stractBuchiCegarLoop]: Abstraction has 2188 states and 3610 transitions. [2023-02-16 04:33:59,680 INFO L335 stractBuchiCegarLoop]: ======== Iteration 33 ============ [2023-02-16 04:33:59,680 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2188 states and 3610 transitions. [2023-02-16 04:33:59,686 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 190 [2023-02-16 04:33:59,687 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:33:59,687 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:33:59,689 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:33:59,689 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [53, 53, 38, 38, 38, 38, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:33:59,689 INFO L748 eck$LassoCheckResult]: Stem: 115101#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 115039#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; 115040#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 115067#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; 115055#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115056#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115669#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; 115665#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115666#$Ultimate##0 ~n := #in~n; 115670#L25 assume ~n <= 0;#res := 1; 115668#factFINAL assume true; 115664#factEXIT >#68#return; 115660#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115661#$Ultimate##0 ~n := #in~n; 115667#L25 assume ~n <= 0;#res := 1; 115663#factFINAL assume true; 115659#factEXIT >#70#return; 115633#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115657#$Ultimate##0 ~n := #in~n; 115662#L25 assume ~n <= 0;#res := 1; 115658#factFINAL assume true; 115656#factEXIT >#72#return; 115655#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; 115653#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115650#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115646#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115643#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; 115634#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115635#$Ultimate##0 ~n := #in~n; 115652#L25 assume !(~n <= 0); 115648#L26 call #t~ret0 := fact(~n - 1);< 115649#$Ultimate##0 ~n := #in~n; 115654#L25 assume ~n <= 0;#res := 1; 115651#factFINAL assume true; 115647#factEXIT >#66#return; 115644#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115641#factFINAL assume true; 115632#factEXIT >#74#return; 115628#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115629#$Ultimate##0 ~n := #in~n; 115639#L25 assume ~n <= 0;#res := 1; 115631#factFINAL assume true; 115627#factEXIT >#76#return; 115623#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115624#$Ultimate##0 ~n := #in~n; 115640#L25 assume !(~n <= 0); 115637#L26 call #t~ret0 := fact(~n - 1);< 115638#$Ultimate##0 ~n := #in~n; 115645#L25 assume ~n <= 0;#res := 1; 115642#factFINAL assume true; 115636#factEXIT >#66#return; 115630#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115626#factFINAL assume true; 115622#factEXIT >#78#return; 115619#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; 115617#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 115615#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115613#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115611#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; 115574#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115610#$Ultimate##0 ~n := #in~n; 115609#L25 assume !(~n <= 0); 115590#L26 call #t~ret0 := fact(~n - 1);< 115593#$Ultimate##0 ~n := #in~n; 115602#L25 assume !(~n <= 0); 115588#L26 call #t~ret0 := fact(~n - 1);< 115605#$Ultimate##0 ~n := #in~n; 115607#L25 assume ~n <= 0;#res := 1; 115606#factFINAL assume true; 115603#factEXIT >#66#return; 115604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115625#factFINAL assume true; 115620#factEXIT >#66#return; 115618#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115616#factFINAL assume true; 115614#factEXIT >#74#return; 115598#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115599#$Ultimate##0 ~n := #in~n; 115601#L25 assume ~n <= 0;#res := 1; 115600#factFINAL assume true; 115597#factEXIT >#76#return; 115573#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115610#$Ultimate##0 ~n := #in~n; 115609#L25 assume !(~n <= 0); 115590#L26 call #t~ret0 := fact(~n - 1);< 115593#$Ultimate##0 ~n := #in~n; 115602#L25 assume !(~n <= 0); 115588#L26 call #t~ret0 := fact(~n - 1);< 115605#$Ultimate##0 ~n := #in~n; 115607#L25 assume ~n <= 0;#res := 1; 115606#factFINAL assume true; 115603#factEXIT >#66#return; 115604#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115625#factFINAL assume true; 115620#factEXIT >#66#return; 115618#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115616#factFINAL assume true; 115614#factEXIT >#78#return; 115041#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; 115042#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 115068#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115100#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 115063#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 115064#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115083#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115084#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; 116175#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 116183#$Ultimate##0 ~n := #in~n; 116430#L25 assume !(~n <= 0); 115944#L26 call #t~ret0 := fact(~n - 1);< 116044#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115950#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116260#factFINAL assume true; 116165#factEXIT >#68#return; 115875#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115928#$Ultimate##0 ~n := #in~n; 116117#L25 assume ~n <= 0;#res := 1; 116080#factFINAL assume true; 116025#factEXIT >#70#return; 115884#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115927#$Ultimate##0 ~n := #in~n; 116486#L25 assume !(~n <= 0); 115948#L26 call #t~ret0 := fact(~n - 1);< 116044#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115936#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115926#factFINAL assume true; 115869#factEXIT >#72#return; 115913#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; 116410#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 116409#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116407#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 116340#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; 115904#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115927#$Ultimate##0 ~n := #in~n; 116486#L25 assume !(~n <= 0); 115948#L26 call #t~ret0 := fact(~n - 1);< 116044#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115936#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115926#factFINAL assume true; 115869#factEXIT >#68#return; 115876#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115928#$Ultimate##0 ~n := #in~n; 116117#L25 assume !(~n <= 0); 115948#L26 call #t~ret0 := fact(~n - 1);< 116044#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115936#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115926#factFINAL assume true; 115869#factEXIT >#70#return; 115894#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115928#$Ultimate##0 ~n := #in~n; 116117#L25 assume ~n <= 0;#res := 1; 116080#factFINAL assume true; 116025#factEXIT >#72#return; 116003#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; 116002#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 116001#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 116000#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115998#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; 115989#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115996#$Ultimate##0 ~n := #in~n; 116121#L25 assume !(~n <= 0); 116035#L26 call #t~ret0 := fact(~n - 1);< 116043#$Ultimate##0 ~n := #in~n; 116118#L25 assume !(~n <= 0); 116039#L26 call #t~ret0 := fact(~n - 1);< 116116#$Ultimate##0 ~n := #in~n; 116190#L25 assume ~n <= 0;#res := 1; 116189#factFINAL assume true; 116113#factEXIT >#66#return; 116112#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116086#factFINAL assume true; 116034#factEXIT >#66#return; 116033#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 116013#factFINAL assume true; 115971#factEXIT >#74#return; 115906#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115929#$Ultimate##0 ~n := #in~n; 116127#L25 assume !(~n <= 0); 115945#L26 call #t~ret0 := fact(~n - 1);< 116123#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115936#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115926#factFINAL assume true; 115869#factEXIT >#76#return; 115908#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115921#$Ultimate##0 ~n := #in~n; 116348#L25 assume !(~n <= 0); 115942#L26 call #t~ret0 := fact(~n - 1);< 115951#$Ultimate##0 ~n := #in~n; 115966#L25 assume ~n <= 0;#res := 1; 115960#factFINAL assume true; 115940#factEXIT >#66#return; 115936#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115926#factFINAL assume true; 115869#factEXIT >#78#return; 115860#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; 115726#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 115725#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115724#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 115065#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 115066#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115392#L42-3 [2023-02-16 04:33:59,690 INFO L750 eck$LassoCheckResult]: Loop: 115392#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115243#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; 115125#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115217#$Ultimate##0 ~n := #in~n; 115371#L25 assume !(~n <= 0); 115210#L26 call #t~ret0 := fact(~n - 1);< 115231#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#68#return; 115111#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115217#$Ultimate##0 ~n := #in~n; 115371#L25 assume ~n <= 0;#res := 1; 115370#factFINAL assume true; 115367#factEXIT >#70#return; 115136#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115148#$Ultimate##0 ~n := #in~n; 115435#L25 assume !(~n <= 0); 115204#L26 call #t~ret0 := fact(~n - 1);< 115215#$Ultimate##0 ~n := #in~n; 115372#L25 assume !(~n <= 0); 115203#L26 call #t~ret0 := fact(~n - 1);< 115285#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#72#return; 115141#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; 115366#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115364#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115362#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115360#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; 115107#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115149#$Ultimate##0 ~n := #in~n; 115345#L25 assume !(~n <= 0); 115209#L26 call #t~ret0 := fact(~n - 1);< 115309#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115246#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115244#factFINAL assume true; 115219#factEXIT >#68#return; 115108#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115217#$Ultimate##0 ~n := #in~n; 115371#L25 assume !(~n <= 0); 115210#L26 call #t~ret0 := fact(~n - 1);< 115231#$Ultimate##0 ~n := #in~n; 115258#L25 assume ~n <= 0;#res := 1; 115257#factFINAL assume true; 115225#factEXIT >#66#return; 115223#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115216#factFINAL assume true; 115192#factEXIT >#70#return; 115117#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115149#$Ultimate##0 ~n := #in~n; 115345#L25 assume !(~n <= 0); 115209#L26 call #t~ret0 := fact(~n - 1);< 115309#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115420#factFINAL assume true; 115417#factEXIT >#72#return; 115415#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; 115416#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115410#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115411#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115405#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; 115123#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115149#$Ultimate##0 ~n := #in~n; 115345#L25 assume !(~n <= 0); 115209#L26 call #t~ret0 := fact(~n - 1);< 115309#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#68#return; 115122#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115149#$Ultimate##0 ~n := #in~n; 115345#L25 assume !(~n <= 0); 115209#L26 call #t~ret0 := fact(~n - 1);< 115309#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115420#factFINAL assume true; 115417#factEXIT >#70#return; 115130#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115218#$Ultimate##0 ~n := #in~n; 115235#L25 assume !(~n <= 0); 115210#L26 call #t~ret0 := fact(~n - 1);< 115231#$Ultimate##0 ~n := #in~n; 115258#L25 assume ~n <= 0;#res := 1; 115257#factFINAL assume true; 115225#factEXIT >#66#return; 115223#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115216#factFINAL assume true; 115192#factEXIT >#72#return; 115196#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; 115449#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115448#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115446#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115442#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; 115132#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115148#$Ultimate##0 ~n := #in~n; 115435#L25 assume !(~n <= 0); 115204#L26 call #t~ret0 := fact(~n - 1);< 115215#$Ultimate##0 ~n := #in~n; 115372#L25 assume !(~n <= 0); 115203#L26 call #t~ret0 := fact(~n - 1);< 115285#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#68#return; 115105#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115149#$Ultimate##0 ~n := #in~n; 115345#L25 assume !(~n <= 0); 115209#L26 call #t~ret0 := fact(~n - 1);< 115309#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#70#return; 115133#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115217#$Ultimate##0 ~n := #in~n; 115371#L25 assume ~n <= 0;#res := 1; 115370#factFINAL assume true; 115367#factEXIT >#72#return; 115368#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; 115412#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 115409#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115406#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 115165#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; 115126#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 115148#$Ultimate##0 ~n := #in~n; 115435#L25 assume !(~n <= 0); 115204#L26 call #t~ret0 := fact(~n - 1);< 115215#$Ultimate##0 ~n := #in~n; 115372#L25 assume !(~n <= 0); 115203#L26 call #t~ret0 := fact(~n - 1);< 115285#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#74#return; 115106#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 115148#$Ultimate##0 ~n := #in~n; 115435#L25 assume !(~n <= 0); 115204#L26 call #t~ret0 := fact(~n - 1);< 115215#$Ultimate##0 ~n := #in~n; 115372#L25 assume !(~n <= 0); 115203#L26 call #t~ret0 := fact(~n - 1);< 115285#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115329#L25 assume !(~n <= 0); 115208#L26 call #t~ret0 := fact(~n - 1);< 115328#$Ultimate##0 ~n := #in~n; 115331#L25 assume ~n <= 0;#res := 1; 115330#factFINAL assume true; 115327#factEXIT >#66#return; 115317#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115297#factFINAL assume true; 115293#factEXIT >#66#return; 115291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115279#factFINAL assume true; 115254#factEXIT >#66#return; 115213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115441#factFINAL assume true; 115200#factEXIT >#66#return; 115150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115151#factFINAL assume true; 115104#factEXIT >#76#return; 115137#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 115197#$Ultimate##0 ~n := #in~n; 115234#L25 assume !(~n <= 0); 115227#L26 call #t~ret0 := fact(~n - 1);< 115230#$Ultimate##0 ~n := #in~n; 115258#L25 assume ~n <= 0;#res := 1; 115257#factFINAL assume true; 115225#factEXIT >#66#return; 115223#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 115216#factFINAL assume true; 115192#factEXIT >#78#return; 115177#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; 115178#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 115398#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 115397#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 115396#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 115395#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 115392#L42-3 [2023-02-16 04:33:59,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:59,691 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 22 times [2023-02-16 04:33:59,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:59,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2073513742] [2023-02-16 04:33:59,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:59,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:59,699 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:59,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [69804420] [2023-02-16 04:33:59,699 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:33:59,699 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:59,699 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:59,703 INFO L229 MonitoredProcess]: Starting monitored process 190 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:59,704 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (190)] Waiting until timeout for monitored process [2023-02-16 04:33:59,888 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:33:59,888 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:33:59,888 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:33:59,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:33:59,982 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:33:59,982 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:33:59,982 INFO L85 PathProgramCache]: Analyzing trace with hash -1141501247, now seen corresponding path program 21 times [2023-02-16 04:33:59,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:33:59,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187083066] [2023-02-16 04:33:59,982 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:33:59,983 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:33:59,991 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:33:59,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1338915135] [2023-02-16 04:33:59,992 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:33:59,992 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:33:59,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:33:59,995 INFO L229 MonitoredProcess]: Starting monitored process 191 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:33:59,996 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (191)] Waiting until timeout for monitored process [2023-02-16 04:34:00,170 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2023-02-16 04:34:00,171 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:00,173 INFO L263 TraceCheckSpWp]: Trace formula consists of 375 conjuncts, 28 conjunts are in the unsatisfiable core [2023-02-16 04:34:00,176 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:00,391 INFO L134 CoverageAnalysis]: Checked inductivity of 6983 backedges. 1606 proven. 210 refuted. 0 times theorem prover too weak. 5167 trivial. 0 not checked. [2023-02-16 04:34:00,391 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:01,688 INFO L134 CoverageAnalysis]: Checked inductivity of 6983 backedges. 1606 proven. 235 refuted. 0 times theorem prover too weak. 5142 trivial. 0 not checked. [2023-02-16 04:34:01,688 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:01,688 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1187083066] [2023-02-16 04:34:01,688 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:01,688 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1338915135] [2023-02-16 04:34:01,688 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1338915135] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:01,688 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:01,688 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 25] total 33 [2023-02-16 04:34:01,689 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1056854830] [2023-02-16 04:34:01,689 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:01,689 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:01,689 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:01,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2023-02-16 04:34:01,690 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=133, Invalid=989, Unknown=0, NotChecked=0, Total=1122 [2023-02-16 04:34:01,690 INFO L87 Difference]: Start difference. First operand 2188 states and 3610 transitions. cyclomatic complexity: 1439 Second operand has 34 states, 29 states have (on average 2.2413793103448274) internal successors, (65), 32 states have internal predecessors, (65), 17 states have call successors, (20), 1 states have call predecessors, (20), 10 states have return successors, (25), 13 states have call predecessors, (25), 17 states have call successors, (25) [2023-02-16 04:34:03,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:03,713 INFO L93 Difference]: Finished difference Result 4280 states and 9138 transitions. [2023-02-16 04:34:03,713 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4280 states and 9138 transitions. [2023-02-16 04:34:03,737 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 572 [2023-02-16 04:34:03,782 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4280 states to 4180 states and 8885 transitions. [2023-02-16 04:34:03,782 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 707 [2023-02-16 04:34:03,783 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 707 [2023-02-16 04:34:03,783 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4180 states and 8885 transitions. [2023-02-16 04:34:03,784 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:03,784 INFO L218 hiAutomatonCegarLoop]: Abstraction has 4180 states and 8885 transitions. [2023-02-16 04:34:03,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4180 states and 8885 transitions. [2023-02-16 04:34:03,888 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4180 to 2875. [2023-02-16 04:34:03,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2875 states, 1758 states have (on average 1.0728100113765642) internal successors, (1886), 1761 states have internal predecessors, (1886), 936 states have call successors, (936), 179 states have call predecessors, (936), 181 states have return successors, (2898), 934 states have call predecessors, (2898), 936 states have call successors, (2898) [2023-02-16 04:34:03,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2875 states to 2875 states and 5720 transitions. [2023-02-16 04:34:03,907 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2875 states and 5720 transitions. [2023-02-16 04:34:03,907 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2023-02-16 04:34:03,908 INFO L428 stractBuchiCegarLoop]: Abstraction has 2875 states and 5720 transitions. [2023-02-16 04:34:03,908 INFO L335 stractBuchiCegarLoop]: ======== Iteration 34 ============ [2023-02-16 04:34:03,908 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2875 states and 5720 transitions. [2023-02-16 04:34:03,918 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 301 [2023-02-16 04:34:03,918 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:03,918 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:03,920 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:03,920 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [57, 57, 42, 42, 42, 42, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:03,920 INFO L748 eck$LassoCheckResult]: Stem: 123610#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 123546#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; 123547#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 123580#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; 123569#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 123570#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124341#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; 124338#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 124339#$Ultimate##0 ~n := #in~n; 124343#L25 assume ~n <= 0;#res := 1; 124342#factFINAL assume true; 124337#factEXIT >#68#return; 124333#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 124334#$Ultimate##0 ~n := #in~n; 124340#L25 assume ~n <= 0;#res := 1; 124336#factFINAL assume true; 124332#factEXIT >#70#return; 124306#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 124330#$Ultimate##0 ~n := #in~n; 124335#L25 assume ~n <= 0;#res := 1; 124331#factFINAL assume true; 124329#factEXIT >#72#return; 124328#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; 124327#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124326#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124323#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124319#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; 124307#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 124308#$Ultimate##0 ~n := #in~n; 124318#L25 assume !(~n <= 0); 124316#L26 call #t~ret0 := fact(~n - 1);< 124317#$Ultimate##0 ~n := #in~n; 124325#L25 assume ~n <= 0;#res := 1; 124321#factFINAL assume true; 124315#factEXIT >#66#return; 124314#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124313#factFINAL assume true; 124305#factEXIT >#74#return; 124301#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 124302#$Ultimate##0 ~n := #in~n; 124312#L25 assume ~n <= 0;#res := 1; 124304#factFINAL assume true; 124300#factEXIT >#76#return; 124296#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 124297#$Ultimate##0 ~n := #in~n; 124322#L25 assume !(~n <= 0); 124310#L26 call #t~ret0 := fact(~n - 1);< 124311#$Ultimate##0 ~n := #in~n; 124324#L25 assume ~n <= 0;#res := 1; 124320#factFINAL assume true; 124309#factEXIT >#66#return; 124303#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124299#factFINAL assume true; 124295#factEXIT >#78#return; 124292#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; 124290#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 124288#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124286#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124285#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; 123920#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123976#$Ultimate##0 ~n := #in~n; 123977#L25 assume !(~n <= 0); 123948#L26 call #t~ret0 := fact(~n - 1);< 123951#$Ultimate##0 ~n := #in~n; 124266#L25 assume !(~n <= 0); 123946#L26 call #t~ret0 := fact(~n - 1);< 124282#$Ultimate##0 ~n := #in~n; 124284#L25 assume ~n <= 0;#res := 1; 124283#factFINAL assume true; 124280#factEXIT >#66#return; 124281#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124298#factFINAL assume true; 124293#factEXIT >#66#return; 124291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124289#factFINAL assume true; 124287#factEXIT >#74#return; 123937#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123938#$Ultimate##0 ~n := #in~n; 123959#L25 assume ~n <= 0;#res := 1; 123957#factFINAL assume true; 123936#factEXIT >#76#return; 123921#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123976#$Ultimate##0 ~n := #in~n; 123977#L25 assume !(~n <= 0); 123948#L26 call #t~ret0 := fact(~n - 1);< 123951#$Ultimate##0 ~n := #in~n; 124266#L25 assume !(~n <= 0); 123946#L26 call #t~ret0 := fact(~n - 1);< 124282#$Ultimate##0 ~n := #in~n; 124284#L25 assume ~n <= 0;#res := 1; 124283#factFINAL assume true; 124280#factEXIT >#66#return; 124281#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124298#factFINAL assume true; 124293#factEXIT >#66#return; 124291#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124289#factFINAL assume true; 124287#factEXIT >#78#return; 123914#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; 123909#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 123615#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123616#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 123577#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 123578#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 123593#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123594#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; 124545#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 124561#$Ultimate##0 ~n := #in~n; 124976#L25 assume !(~n <= 0); 124525#L26 call #t~ret0 := fact(~n - 1);< 124682#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124529#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124574#factFINAL assume true; 124531#factEXIT >#68#return; 124452#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 124506#$Ultimate##0 ~n := #in~n; 124795#L25 assume ~n <= 0;#res := 1; 124517#factFINAL assume true; 124509#factEXIT >#70#return; 124459#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 124394#$Ultimate##0 ~n := #in~n; 124794#L25 assume !(~n <= 0); 124527#L26 call #t~ret0 := fact(~n - 1);< 124682#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124516#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124505#factFINAL assume true; 124485#factEXIT >#72#return; 124499#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; 124589#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124588#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124587#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124582#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; 124417#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 124394#$Ultimate##0 ~n := #in~n; 124794#L25 assume !(~n <= 0); 124527#L26 call #t~ret0 := fact(~n - 1);< 124682#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124516#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124505#factFINAL assume true; 124485#factEXIT >#68#return; 124430#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 124506#$Ultimate##0 ~n := #in~n; 124795#L25 assume !(~n <= 0); 124527#L26 call #t~ret0 := fact(~n - 1);< 124682#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124516#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124505#factFINAL assume true; 124485#factEXIT >#70#return; 124434#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 124506#$Ultimate##0 ~n := #in~n; 124795#L25 assume ~n <= 0;#res := 1; 124517#factFINAL assume true; 124509#factEXIT >#72#return; 124514#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; 124704#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124703#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124702#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124701#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; 124446#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 124615#$Ultimate##0 ~n := #in~n; 124683#L25 assume !(~n <= 0); 124623#L26 call #t~ret0 := fact(~n - 1);< 124632#$Ultimate##0 ~n := #in~n; 124754#L25 assume !(~n <= 0); 124625#L26 call #t~ret0 := fact(~n - 1);< 124690#$Ultimate##0 ~n := #in~n; 124712#L25 assume ~n <= 0;#res := 1; 124710#factFINAL assume true; 124687#factEXIT >#66#return; 124685#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124634#factFINAL assume true; 124622#factEXIT >#66#return; 124621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124620#factFINAL assume true; 124409#factEXIT >#74#return; 124458#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 124508#$Ultimate##0 ~n := #in~n; 124565#L25 assume !(~n <= 0); 124521#L26 call #t~ret0 := fact(~n - 1);< 124631#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124516#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124505#factFINAL assume true; 124485#factEXIT >#76#return; 124487#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 124507#$Ultimate##0 ~n := #in~n; 124717#L25 assume !(~n <= 0); 124526#L26 call #t~ret0 := fact(~n - 1);< 124530#$Ultimate##0 ~n := #in~n; 124581#L25 assume ~n <= 0;#res := 1; 124566#factFINAL assume true; 124519#factEXIT >#66#return; 124516#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124505#factFINAL assume true; 124485#factEXIT >#78#return; 124500#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; 124379#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 124584#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124583#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 123703#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 123704#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 123651#L42-3 [2023-02-16 04:34:03,921 INFO L750 eck$LassoCheckResult]: Loop: 123651#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123650#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; 123638#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123646#$Ultimate##0 ~n := #in~n; 123648#L25 assume !(~n <= 0); 123649#L26 call #t~ret0 := fact(~n - 1);< 123792#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124178#factFINAL assume true; 124175#factEXIT >#66#return; 123716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123717#factFINAL assume true; 123744#factEXIT >#68#return; 123634#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123646#$Ultimate##0 ~n := #in~n; 123648#L25 assume ~n <= 0;#res := 1; 123647#factFINAL assume true; 123633#factEXIT >#70#return; 123642#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123713#$Ultimate##0 ~n := #in~n; 123770#L25 assume !(~n <= 0); 123723#L26 call #t~ret0 := fact(~n - 1);< 123733#$Ultimate##0 ~n := #in~n; 123743#L25 assume !(~n <= 0); 123726#L26 call #t~ret0 := fact(~n - 1);< 123741#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124178#factFINAL assume true; 124175#factEXIT >#66#return; 123716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123717#factFINAL assume true; 123744#factEXIT >#72#return; 123702#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; 123712#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 123711#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123710#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123709#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; 123690#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123708#$Ultimate##0 ~n := #in~n; 123735#L25 assume !(~n <= 0); 123725#L26 call #t~ret0 := fact(~n - 1);< 123758#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123746#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123745#factFINAL assume true; 123654#factEXIT >#68#return; 123636#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123646#$Ultimate##0 ~n := #in~n; 123648#L25 assume !(~n <= 0); 123649#L26 call #t~ret0 := fact(~n - 1);< 123792#$Ultimate##0 ~n := #in~n; 123806#L25 assume ~n <= 0;#res := 1; 123794#factFINAL assume true; 123786#factEXIT >#66#return; 123785#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123782#factFINAL assume true; 123776#factEXIT >#70#return; 123666#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123708#$Ultimate##0 ~n := #in~n; 123735#L25 assume !(~n <= 0); 123725#L26 call #t~ret0 := fact(~n - 1);< 123758#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123754#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123868#factFINAL assume true; 123859#factEXIT >#72#return; 123863#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; 124030#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124011#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124012#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 124003#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; 123674#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123708#$Ultimate##0 ~n := #in~n; 123735#L25 assume !(~n <= 0); 123725#L26 call #t~ret0 := fact(~n - 1);< 123758#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124178#factFINAL assume true; 124175#factEXIT >#66#return; 123716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123717#factFINAL assume true; 123744#factEXIT >#68#return; 123689#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123708#$Ultimate##0 ~n := #in~n; 123735#L25 assume !(~n <= 0); 123725#L26 call #t~ret0 := fact(~n - 1);< 123758#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123754#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123868#factFINAL assume true; 123859#factEXIT >#70#return; 123685#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123783#$Ultimate##0 ~n := #in~n; 123734#L25 assume !(~n <= 0); 123649#L26 call #t~ret0 := fact(~n - 1);< 123792#$Ultimate##0 ~n := #in~n; 123806#L25 assume ~n <= 0;#res := 1; 123794#factFINAL assume true; 123786#factEXIT >#66#return; 123785#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123782#factFINAL assume true; 123776#factEXIT >#72#return; 123780#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; 124004#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124001#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 124000#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123999#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; 123682#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123713#$Ultimate##0 ~n := #in~n; 123770#L25 assume !(~n <= 0); 123723#L26 call #t~ret0 := fact(~n - 1);< 123733#$Ultimate##0 ~n := #in~n; 123743#L25 assume !(~n <= 0); 123726#L26 call #t~ret0 := fact(~n - 1);< 123741#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124178#factFINAL assume true; 124175#factEXIT >#66#return; 123716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123717#factFINAL assume true; 123744#factEXIT >#68#return; 123681#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123708#$Ultimate##0 ~n := #in~n; 123735#L25 assume !(~n <= 0); 123725#L26 call #t~ret0 := fact(~n - 1);< 123758#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123731#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 124178#factFINAL assume true; 124175#factEXIT >#66#return; 123716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123717#factFINAL assume true; 123744#factEXIT >#70#return; 123637#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123646#$Ultimate##0 ~n := #in~n; 123648#L25 assume ~n <= 0;#res := 1; 123647#factFINAL assume true; 123633#factEXIT >#72#return; 123631#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; 123632#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 124176#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123626#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 123627#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; 123664#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 123713#$Ultimate##0 ~n := #in~n; 123770#L25 assume !(~n <= 0); 123723#L26 call #t~ret0 := fact(~n - 1);< 123733#$Ultimate##0 ~n := #in~n; 123743#L25 assume !(~n <= 0); 123726#L26 call #t~ret0 := fact(~n - 1);< 123741#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123749#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123736#factFINAL assume true; 123718#factEXIT >#66#return; 123729#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123714#factFINAL assume true; 123715#factEXIT >#74#return; 123675#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 123713#$Ultimate##0 ~n := #in~n; 123770#L25 assume !(~n <= 0); 123723#L26 call #t~ret0 := fact(~n - 1);< 123733#$Ultimate##0 ~n := #in~n; 123743#L25 assume !(~n <= 0); 123726#L26 call #t~ret0 := fact(~n - 1);< 123741#$Ultimate##0 ~n := #in~n; 123742#L25 assume !(~n <= 0); 123721#L26 call #t~ret0 := fact(~n - 1);< 123773#$Ultimate##0 ~n := #in~n; 123775#L25 assume ~n <= 0;#res := 1; 123774#factFINAL assume true; 123772#factEXIT >#66#return; 123771#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123757#factFINAL assume true; 123753#factEXIT >#66#return; 123752#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123751#factFINAL assume true; 123747#factEXIT >#66#return; 123746#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123745#factFINAL assume true; 123654#factEXIT >#76#return; 123698#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 123784#$Ultimate##0 ~n := #in~n; 123805#L25 assume !(~n <= 0); 123789#L26 call #t~ret0 := fact(~n - 1);< 123793#$Ultimate##0 ~n := #in~n; 123806#L25 assume ~n <= 0;#res := 1; 123794#factFINAL assume true; 123786#factEXIT >#66#return; 123785#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 123782#factFINAL assume true; 123776#factEXIT >#78#return; 123777#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; 123581#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 123582#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 123613#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 123614#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 123652#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 123651#L42-3 [2023-02-16 04:34:03,921 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:03,921 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 23 times [2023-02-16 04:34:03,921 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:03,921 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2048251061] [2023-02-16 04:34:03,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:03,923 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:03,937 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:03,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1672844409] [2023-02-16 04:34:03,937 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:34:03,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:03,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:03,945 INFO L229 MonitoredProcess]: Starting monitored process 192 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:03,954 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (192)] Waiting until timeout for monitored process [2023-02-16 04:34:04,165 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 23 check-sat command(s) [2023-02-16 04:34:04,165 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:04,166 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:04,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:04,250 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:04,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:04,250 INFO L85 PathProgramCache]: Analyzing trace with hash 759431569, now seen corresponding path program 22 times [2023-02-16 04:34:04,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:04,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894423932] [2023-02-16 04:34:04,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:04,251 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:04,260 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:04,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1874577488] [2023-02-16 04:34:04,261 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:34:04,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:04,261 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:04,269 INFO L229 MonitoredProcess]: Starting monitored process 193 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:04,288 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (193)] Waiting until timeout for monitored process [2023-02-16 04:34:04,448 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:34:04,448 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:04,451 INFO L263 TraceCheckSpWp]: Trace formula consists of 767 conjuncts, 24 conjunts are in the unsatisfiable core [2023-02-16 04:34:04,454 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:04,609 INFO L134 CoverageAnalysis]: Checked inductivity of 8171 backedges. 3676 proven. 270 refuted. 0 times theorem prover too weak. 4225 trivial. 0 not checked. [2023-02-16 04:34:04,609 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:05,832 INFO L134 CoverageAnalysis]: Checked inductivity of 8171 backedges. 202 proven. 1839 refuted. 0 times theorem prover too weak. 6130 trivial. 0 not checked. [2023-02-16 04:34:05,832 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:05,833 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1894423932] [2023-02-16 04:34:05,833 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:05,833 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1874577488] [2023-02-16 04:34:05,833 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1874577488] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:05,833 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:05,833 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 23] total 28 [2023-02-16 04:34:05,833 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1589402393] [2023-02-16 04:34:05,834 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:05,834 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:05,834 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:05,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2023-02-16 04:34:05,835 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=108, Invalid=648, Unknown=0, NotChecked=0, Total=756 [2023-02-16 04:34:05,835 INFO L87 Difference]: Start difference. First operand 2875 states and 5720 transitions. cyclomatic complexity: 2862 Second operand has 28 states, 24 states have (on average 3.125) internal successors, (75), 28 states have internal predecessors, (75), 18 states have call successors, (32), 2 states have call predecessors, (32), 11 states have return successors, (37), 12 states have call predecessors, (37), 18 states have call successors, (37) [2023-02-16 04:34:07,181 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:07,181 INFO L93 Difference]: Finished difference Result 5304 states and 10581 transitions. [2023-02-16 04:34:07,181 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5304 states and 10581 transitions. [2023-02-16 04:34:07,214 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 384 [2023-02-16 04:34:07,256 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5304 states to 3939 states and 7630 transitions. [2023-02-16 04:34:07,256 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 948 [2023-02-16 04:34:07,258 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 970 [2023-02-16 04:34:07,258 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3939 states and 7630 transitions. [2023-02-16 04:34:07,258 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:07,259 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3939 states and 7630 transitions. [2023-02-16 04:34:07,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3939 states and 7630 transitions. [2023-02-16 04:34:07,350 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3939 to 3271. [2023-02-16 04:34:07,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3271 states, 2034 states have (on average 1.0717797443461161) internal successors, (2180), 2029 states have internal predecessors, (2180), 1055 states have call successors, (1055), 212 states have call predecessors, (1055), 182 states have return successors, (3044), 1029 states have call predecessors, (3044), 1055 states have call successors, (3044) [2023-02-16 04:34:07,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3271 states to 3271 states and 6279 transitions. [2023-02-16 04:34:07,370 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3271 states and 6279 transitions. [2023-02-16 04:34:07,370 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2023-02-16 04:34:07,371 INFO L428 stractBuchiCegarLoop]: Abstraction has 3271 states and 6279 transitions. [2023-02-16 04:34:07,371 INFO L335 stractBuchiCegarLoop]: ======== Iteration 35 ============ [2023-02-16 04:34:07,371 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3271 states and 6279 transitions. [2023-02-16 04:34:07,385 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 346 [2023-02-16 04:34:07,385 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:07,385 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:07,386 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:07,386 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [51, 51, 36, 36, 36, 36, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:07,387 INFO L748 eck$LassoCheckResult]: Stem: 133967#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 133912#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; 133913#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 133937#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; 133926#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 133927#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 137060#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; 133896#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133897#$Ultimate##0 ~n := #in~n; 136990#L25 assume ~n <= 0;#res := 1; 136989#factFINAL assume true; 136986#factEXIT >#68#return; 133961#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133962#$Ultimate##0 ~n := #in~n; 136955#L25 assume ~n <= 0;#res := 1; 136954#factFINAL assume true; 136953#factEXIT >#70#return; 133892#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133893#$Ultimate##0 ~n := #in~n; 137069#L25 assume ~n <= 0;#res := 1; 137068#factFINAL assume true; 137067#factEXIT >#72#return; 137066#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; 137065#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 137063#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 137062#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133943#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; 133944#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 137100#$Ultimate##0 ~n := #in~n; 137107#L25 assume !(~n <= 0); 137070#L26 call #t~ret0 := fact(~n - 1);< 137105#$Ultimate##0 ~n := #in~n; 137108#L25 assume ~n <= 0;#res := 1; 137106#factFINAL assume true; 137104#factEXIT >#66#return; 137103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137102#factFINAL assume true; 137099#factEXIT >#74#return; 137096#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 137097#$Ultimate##0 ~n := #in~n; 137101#L25 assume ~n <= 0;#res := 1; 137098#factFINAL assume true; 137095#factEXIT >#76#return; 137092#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 137093#$Ultimate##0 ~n := #in~n; 137115#L25 assume !(~n <= 0); 137112#L26 call #t~ret0 := fact(~n - 1);< 137113#$Ultimate##0 ~n := #in~n; 137116#L25 assume ~n <= 0;#res := 1; 137114#factFINAL assume true; 137111#factEXIT >#66#return; 137110#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137109#factFINAL assume true; 137091#factEXIT >#78#return; 137088#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; 137086#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 137084#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 137082#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 137080#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; 135582#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135849#$Ultimate##0 ~n := #in~n; 135850#L25 assume !(~n <= 0); 135844#L26 call #t~ret0 := fact(~n - 1);< 135847#$Ultimate##0 ~n := #in~n; 136412#L25 assume !(~n <= 0); 135842#L26 call #t~ret0 := fact(~n - 1);< 137077#$Ultimate##0 ~n := #in~n; 137079#L25 assume ~n <= 0;#res := 1; 137078#factFINAL assume true; 137075#factEXIT >#66#return; 137076#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137094#factFINAL assume true; 137089#factEXIT >#66#return; 137087#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137085#factFINAL assume true; 137083#factEXIT >#74#return; 135817#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135818#$Ultimate##0 ~n := #in~n; 135820#L25 assume ~n <= 0;#res := 1; 135819#factFINAL assume true; 135816#factEXIT >#76#return; 135580#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135849#$Ultimate##0 ~n := #in~n; 135850#L25 assume !(~n <= 0); 135844#L26 call #t~ret0 := fact(~n - 1);< 135847#$Ultimate##0 ~n := #in~n; 136412#L25 assume !(~n <= 0); 135842#L26 call #t~ret0 := fact(~n - 1);< 137077#$Ultimate##0 ~n := #in~n; 137079#L25 assume ~n <= 0;#res := 1; 137078#factFINAL assume true; 137075#factEXIT >#66#return; 137076#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137094#factFINAL assume true; 137089#factEXIT >#66#return; 137087#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 137085#factFINAL assume true; 137083#factEXIT >#78#return; 135575#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; 135571#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 135568#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135562#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 135272#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 135165#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 135101#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134264#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);< 134260#$Ultimate##0 ~n := #in~n; 134325#L25 assume !(~n <= 0); 134191#L26 call #t~ret0 := fact(~n - 1);< 134293#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134231#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134261#factFINAL assume true; 134244#factEXIT >#68#return; 134096#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134102#$Ultimate##0 ~n := #in~n; 134480#L25 assume ~n <= 0;#res := 1; 134220#factFINAL assume true; 134210#factEXIT >#70#return; 134042#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134101#$Ultimate##0 ~n := #in~n; 134316#L25 assume !(~n <= 0); 134195#L26 call #t~ret0 := fact(~n - 1);< 134293#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134226#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134039#factFINAL assume true; 134100#factEXIT >#72#return; 134161#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; 134460#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134458#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134456#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134411#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; 134059#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134101#$Ultimate##0 ~n := #in~n; 134316#L25 assume !(~n <= 0); 134195#L26 call #t~ret0 := fact(~n - 1);< 134293#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134226#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134039#factFINAL assume true; 134100#factEXIT >#68#return; 134062#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134102#$Ultimate##0 ~n := #in~n; 134480#L25 assume !(~n <= 0); 134195#L26 call #t~ret0 := fact(~n - 1);< 134293#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134226#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134039#factFINAL assume true; 134100#factEXIT >#70#return; 134079#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134102#$Ultimate##0 ~n := #in~n; 134480#L25 assume ~n <= 0;#res := 1; 134220#factFINAL assume true; 134210#factEXIT >#72#return; 134208#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; 134206#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134204#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134202#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134200#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; 134117#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134156#$Ultimate##0 ~n := #in~n; 134757#L25 assume !(~n <= 0); 134186#L26 call #t~ret0 := fact(~n - 1);< 134199#$Ultimate##0 ~n := #in~n; 134413#L25 assume !(~n <= 0); 134193#L26 call #t~ret0 := fact(~n - 1);< 134408#$Ultimate##0 ~n := #in~n; 134429#L25 assume ~n <= 0;#res := 1; 134427#factFINAL assume true; 134405#factEXIT >#66#return; 134403#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134375#factFINAL assume true; 134185#factEXIT >#66#return; 134158#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134157#factFINAL assume true; 134106#factEXIT >#74#return; 134092#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134103#$Ultimate##0 ~n := #in~n; 134318#L25 assume !(~n <= 0); 134190#L26 call #t~ret0 := fact(~n - 1);< 134233#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134226#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134039#factFINAL assume true; 134100#factEXIT >#76#return; 134097#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134038#$Ultimate##0 ~n := #in~n; 134242#L25 assume !(~n <= 0); 134230#L26 call #t~ret0 := fact(~n - 1);< 134234#$Ultimate##0 ~n := #in~n; 134243#L25 assume ~n <= 0;#res := 1; 134235#factFINAL assume true; 134227#factEXIT >#66#return; 134226#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134039#factFINAL assume true; 134100#factEXIT >#78#return; 134181#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; 135263#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 135168#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135167#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 135166#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 135163#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 135164#L42-3 [2023-02-16 04:34:07,387 INFO L750 eck$LassoCheckResult]: Loop: 135164#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 135170#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; 135111#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135160#$Ultimate##0 ~n := #in~n; 135264#L25 assume !(~n <= 0); 135175#L26 call #t~ret0 := fact(~n - 1);< 135309#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135350#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135408#factFINAL assume true; 135407#factEXIT >#68#return; 135122#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135160#$Ultimate##0 ~n := #in~n; 135264#L25 assume ~n <= 0;#res := 1; 135406#factFINAL assume true; 135400#factEXIT >#70#return; 135190#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135262#$Ultimate##0 ~n := #in~n; 135389#L25 assume !(~n <= 0); 135298#L26 call #t~ret0 := fact(~n - 1);< 135360#$Ultimate##0 ~n := #in~n; 135411#L25 assume !(~n <= 0); 135300#L26 call #t~ret0 := fact(~n - 1);< 135366#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135342#factFINAL assume true; 135338#factEXIT >#66#return; 135341#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135412#factFINAL assume true; 135188#factEXIT >#72#return; 135250#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; 135399#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 135398#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135397#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 135395#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; 135223#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135284#$Ultimate##0 ~n := #in~n; 135390#L25 assume !(~n <= 0); 135294#L26 call #t~ret0 := fact(~n - 1);< 135387#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135350#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135408#factFINAL assume true; 135407#factEXIT >#68#return; 135110#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135160#$Ultimate##0 ~n := #in~n; 135264#L25 assume !(~n <= 0); 135175#L26 call #t~ret0 := fact(~n - 1);< 135309#$Ultimate##0 ~n := #in~n; 135183#L25 assume ~n <= 0;#res := 1; 135181#factFINAL assume true; 135171#factEXIT >#66#return; 135169#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135159#factFINAL assume true; 135102#factEXIT >#70#return; 135142#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135284#$Ultimate##0 ~n := #in~n; 135390#L25 assume !(~n <= 0); 135294#L26 call #t~ret0 := fact(~n - 1);< 135387#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135364#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135456#factFINAL assume true; 135426#factEXIT >#72#return; 135424#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; 135425#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 135418#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135419#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 135410#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; 135189#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135284#$Ultimate##0 ~n := #in~n; 135390#L25 assume !(~n <= 0); 135294#L26 call #t~ret0 := fact(~n - 1);< 135387#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135350#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135408#factFINAL assume true; 135407#factEXIT >#68#return; 135198#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135284#$Ultimate##0 ~n := #in~n; 135390#L25 assume !(~n <= 0); 135294#L26 call #t~ret0 := fact(~n - 1);< 135387#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135364#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135456#factFINAL assume true; 135426#factEXIT >#70#return; 135112#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135161#$Ultimate##0 ~n := #in~n; 135185#L25 assume !(~n <= 0); 135175#L26 call #t~ret0 := fact(~n - 1);< 135309#$Ultimate##0 ~n := #in~n; 135183#L25 assume ~n <= 0;#res := 1; 135181#factFINAL assume true; 135171#factEXIT >#66#return; 135169#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135159#factFINAL assume true; 135102#factEXIT >#72#return; 135143#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; 135463#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 135461#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135460#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 135459#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; 135204#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135262#$Ultimate##0 ~n := #in~n; 135389#L25 assume !(~n <= 0); 135298#L26 call #t~ret0 := fact(~n - 1);< 135360#$Ultimate##0 ~n := #in~n; 135411#L25 assume !(~n <= 0); 135300#L26 call #t~ret0 := fact(~n - 1);< 135366#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135350#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135408#factFINAL assume true; 135407#factEXIT >#68#return; 135230#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135284#$Ultimate##0 ~n := #in~n; 135390#L25 assume !(~n <= 0); 135294#L26 call #t~ret0 := fact(~n - 1);< 135387#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135342#factFINAL assume true; 135338#factEXIT >#66#return; 135341#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135412#factFINAL assume true; 135188#factEXIT >#70#return; 135106#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135160#$Ultimate##0 ~n := #in~n; 135264#L25 assume ~n <= 0;#res := 1; 135406#factFINAL assume true; 135400#factEXIT >#72#return; 135402#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; 135447#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 135448#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135440#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 135441#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; 135209#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 135262#$Ultimate##0 ~n := #in~n; 135389#L25 assume !(~n <= 0); 135298#L26 call #t~ret0 := fact(~n - 1);< 135360#$Ultimate##0 ~n := #in~n; 135411#L25 assume !(~n <= 0); 135300#L26 call #t~ret0 := fact(~n - 1);< 135366#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135342#factFINAL assume true; 135338#factEXIT >#66#return; 135307#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135313#factFINAL assume true; 135288#factEXIT >#66#return; 135286#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135283#factFINAL assume true; 135273#factEXIT >#74#return; 135217#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 135262#$Ultimate##0 ~n := #in~n; 135389#L25 assume !(~n <= 0); 135298#L26 call #t~ret0 := fact(~n - 1);< 135360#$Ultimate##0 ~n := #in~n; 135411#L25 assume !(~n <= 0); 135300#L26 call #t~ret0 := fact(~n - 1);< 135366#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135394#L25 assume !(~n <= 0); 135304#L26 call #t~ret0 := fact(~n - 1);< 135392#$Ultimate##0 ~n := #in~n; 135396#L25 assume ~n <= 0;#res := 1; 135393#factFINAL assume true; 135391#factEXIT >#66#return; 135388#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135367#factFINAL assume true; 135362#factEXIT >#66#return; 135361#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135353#factFINAL assume true; 135348#factEXIT >#66#return; 135347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135342#factFINAL assume true; 135338#factEXIT >#66#return; 135341#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135412#factFINAL assume true; 135188#factEXIT >#76#return; 135121#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 135158#$Ultimate##0 ~n := #in~n; 135310#L25 assume !(~n <= 0); 135173#L26 call #t~ret0 := fact(~n - 1);< 135180#$Ultimate##0 ~n := #in~n; 135183#L25 assume ~n <= 0;#res := 1; 135181#factFINAL assume true; 135171#factEXIT >#66#return; 135169#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 135159#factFINAL assume true; 135102#factEXIT >#78#return; 135151#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; 135334#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 135332#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 135312#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 135269#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 135267#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 135164#L42-3 [2023-02-16 04:34:07,387 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:07,387 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 24 times [2023-02-16 04:34:07,387 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:07,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1730652314] [2023-02-16 04:34:07,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:07,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:07,396 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:07,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1091510124] [2023-02-16 04:34:07,396 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:34:07,397 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:07,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:07,404 INFO L229 MonitoredProcess]: Starting monitored process 194 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:07,404 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (194)] Waiting until timeout for monitored process [2023-02-16 04:34:07,638 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 23 check-sat command(s) [2023-02-16 04:34:07,638 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:07,638 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:07,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:07,716 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:07,716 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:07,716 INFO L85 PathProgramCache]: Analyzing trace with hash -1642898207, now seen corresponding path program 23 times [2023-02-16 04:34:07,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:07,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1145532029] [2023-02-16 04:34:07,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:07,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:07,724 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:07,725 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [258035153] [2023-02-16 04:34:07,725 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:34:07,725 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:07,725 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:07,730 INFO L229 MonitoredProcess]: Starting monitored process 195 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:07,731 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (195)] Waiting until timeout for monitored process [2023-02-16 04:34:07,929 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 28 check-sat command(s) [2023-02-16 04:34:07,929 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:07,931 INFO L263 TraceCheckSpWp]: Trace formula consists of 623 conjuncts, 20 conjunts are in the unsatisfiable core [2023-02-16 04:34:07,934 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:08,056 INFO L134 CoverageAnalysis]: Checked inductivity of 6425 backedges. 3299 proven. 177 refuted. 0 times theorem prover too weak. 2949 trivial. 0 not checked. [2023-02-16 04:34:08,056 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:08,834 INFO L134 CoverageAnalysis]: Checked inductivity of 6425 backedges. 707 proven. 539 refuted. 0 times theorem prover too weak. 5179 trivial. 0 not checked. [2023-02-16 04:34:08,835 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:08,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1145532029] [2023-02-16 04:34:08,835 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:08,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [258035153] [2023-02-16 04:34:08,835 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [258035153] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:08,835 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:08,835 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 19] total 22 [2023-02-16 04:34:08,835 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1283993507] [2023-02-16 04:34:08,835 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:08,836 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:08,836 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:08,836 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2023-02-16 04:34:08,836 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=390, Unknown=0, NotChecked=0, Total=462 [2023-02-16 04:34:08,837 INFO L87 Difference]: Start difference. First operand 3271 states and 6279 transitions. cyclomatic complexity: 3041 Second operand has 22 states, 19 states have (on average 3.473684210526316) internal successors, (66), 22 states have internal predecessors, (66), 14 states have call successors, (30), 2 states have call predecessors, (30), 8 states have return successors, (32), 12 states have call predecessors, (32), 14 states have call successors, (32) [2023-02-16 04:34:09,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:09,486 INFO L93 Difference]: Finished difference Result 3930 states and 7347 transitions. [2023-02-16 04:34:09,486 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3930 states and 7347 transitions. [2023-02-16 04:34:09,506 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 411 [2023-02-16 04:34:09,537 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3930 states to 3930 states and 7345 transitions. [2023-02-16 04:34:09,537 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 995 [2023-02-16 04:34:09,538 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 995 [2023-02-16 04:34:09,538 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3930 states and 7345 transitions. [2023-02-16 04:34:09,538 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:09,538 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3930 states and 7345 transitions. [2023-02-16 04:34:09,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3930 states and 7345 transitions. [2023-02-16 04:34:09,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3930 to 3430. [2023-02-16 04:34:09,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3430 states, 2138 states have (on average 1.068755846585594) internal successors, (2285), 2134 states have internal predecessors, (2285), 1110 states have call successors, (1110), 212 states have call predecessors, (1110), 182 states have return successors, (3134), 1083 states have call predecessors, (3134), 1110 states have call successors, (3134) [2023-02-16 04:34:09,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3430 states to 3430 states and 6529 transitions. [2023-02-16 04:34:09,639 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3430 states and 6529 transitions. [2023-02-16 04:34:09,640 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-02-16 04:34:09,640 INFO L428 stractBuchiCegarLoop]: Abstraction has 3430 states and 6529 transitions. [2023-02-16 04:34:09,641 INFO L335 stractBuchiCegarLoop]: ======== Iteration 36 ============ [2023-02-16 04:34:09,641 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3430 states and 6529 transitions. [2023-02-16 04:34:09,654 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 357 [2023-02-16 04:34:09,654 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:09,655 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:09,657 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:09,657 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [52, 52, 37, 37, 37, 37, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:09,657 INFO L748 eck$LassoCheckResult]: Stem: 143186#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 143108#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; 143109#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 143130#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; 143187#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 144311#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 144309#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; 144307#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 144308#$Ultimate##0 ~n := #in~n; 144312#L25 assume ~n <= 0;#res := 1; 144310#factFINAL assume true; 144306#factEXIT >#68#return; 144304#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 144305#$Ultimate##0 ~n := #in~n; 144315#L25 assume ~n <= 0;#res := 1; 144313#factFINAL assume true; 144303#factEXIT >#70#return; 144285#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144301#$Ultimate##0 ~n := #in~n; 144316#L25 assume ~n <= 0;#res := 1; 144314#factFINAL assume true; 144302#factEXIT >#72#return; 144300#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; 144299#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 144297#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 144293#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 144291#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; 144286#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 144289#$Ultimate##0 ~n := #in~n; 144298#L25 assume !(~n <= 0); 144295#L26 call #t~ret0 := fact(~n - 1);< 144296#$Ultimate##0 ~n := #in~n; 144319#L25 assume ~n <= 0;#res := 1; 144317#factFINAL assume true; 144294#factEXIT >#66#return; 144292#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144290#factFINAL assume true; 144284#factEXIT >#74#return; 144287#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 144328#$Ultimate##0 ~n := #in~n; 144330#L25 assume ~n <= 0;#res := 1; 144329#factFINAL assume true; 144327#factEXIT >#76#return; 144203#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144326#$Ultimate##0 ~n := #in~n; 144336#L25 assume !(~n <= 0); 144333#L26 call #t~ret0 := fact(~n - 1);< 144334#$Ultimate##0 ~n := #in~n; 144337#L25 assume ~n <= 0;#res := 1; 144335#factFINAL assume true; 144332#factEXIT >#66#return; 144331#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144325#factFINAL assume true; 144202#factEXIT >#78#return; 144204#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; 144346#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 144345#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 144344#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 144343#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; 143739#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 144198#$Ultimate##0 ~n := #in~n; 144199#L25 assume !(~n <= 0); 144191#L26 call #t~ret0 := fact(~n - 1);< 144196#$Ultimate##0 ~n := #in~n; 144232#L25 assume !(~n <= 0); 144193#L26 call #t~ret0 := fact(~n - 1);< 144340#$Ultimate##0 ~n := #in~n; 144342#L25 assume ~n <= 0;#res := 1; 144341#factFINAL assume true; 144338#factEXIT >#66#return; 144339#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144352#factFINAL assume true; 144350#factEXIT >#66#return; 144349#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144348#factFINAL assume true; 144347#factEXIT >#74#return; 143752#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143753#$Ultimate##0 ~n := #in~n; 143755#L25 assume ~n <= 0;#res := 1; 143754#factFINAL assume true; 143751#factEXIT >#76#return; 143741#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144198#$Ultimate##0 ~n := #in~n; 144199#L25 assume !(~n <= 0); 144191#L26 call #t~ret0 := fact(~n - 1);< 144196#$Ultimate##0 ~n := #in~n; 144232#L25 assume !(~n <= 0); 144193#L26 call #t~ret0 := fact(~n - 1);< 144340#$Ultimate##0 ~n := #in~n; 144342#L25 assume ~n <= 0;#res := 1; 144341#factFINAL assume true; 144338#factEXIT >#66#return; 144339#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144352#factFINAL assume true; 144350#factEXIT >#66#return; 144349#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144348#factFINAL assume true; 144347#factEXIT >#78#return; 143192#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; 143131#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 143132#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143191#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 143123#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 143119#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 143120#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143169#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; 145034#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 145041#$Ultimate##0 ~n := #in~n; 145228#L25 assume !(~n <= 0); 144947#L26 call #t~ret0 := fact(~n - 1);< 145007#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144950#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 145043#factFINAL assume true; 145030#factEXIT >#68#return; 144689#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 144889#$Ultimate##0 ~n := #in~n; 145261#L25 assume ~n <= 0;#res := 1; 144890#factFINAL assume true; 144877#factEXIT >#70#return; 144692#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144895#$Ultimate##0 ~n := #in~n; 145262#L25 assume !(~n <= 0); 144943#L26 call #t~ret0 := fact(~n - 1);< 145007#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144939#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144894#factFINAL assume true; 144670#factEXIT >#72#return; 144750#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; 144980#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 144979#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 144955#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 144953#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; 144696#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 144895#$Ultimate##0 ~n := #in~n; 145262#L25 assume !(~n <= 0); 144943#L26 call #t~ret0 := fact(~n - 1);< 145007#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144939#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144894#factFINAL assume true; 144670#factEXIT >#68#return; 144714#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 144889#$Ultimate##0 ~n := #in~n; 145261#L25 assume !(~n <= 0); 144943#L26 call #t~ret0 := fact(~n - 1);< 145007#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144939#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144894#factFINAL assume true; 144670#factEXIT >#70#return; 144716#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144889#$Ultimate##0 ~n := #in~n; 145261#L25 assume ~n <= 0;#res := 1; 144890#factFINAL assume true; 144877#factEXIT >#72#return; 144876#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; 144867#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 144859#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 144857#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 144855#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; 144809#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 144853#$Ultimate##0 ~n := #in~n; 145066#L25 assume !(~n <= 0); 145003#L26 call #t~ret0 := fact(~n - 1);< 145008#$Ultimate##0 ~n := #in~n; 145386#L25 assume !(~n <= 0); 144999#L26 call #t~ret0 := fact(~n - 1);< 145069#$Ultimate##0 ~n := #in~n; 145376#L25 assume ~n <= 0;#res := 1; 145375#factFINAL assume true; 145067#factEXIT >#66#return; 145065#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 145049#factFINAL assume true; 144998#factEXIT >#66#return; 144997#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144935#factFINAL assume true; 144795#factEXIT >#74#return; 144726#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 144790#$Ultimate##0 ~n := #in~n; 145078#L25 assume !(~n <= 0); 144948#L26 call #t~ret0 := fact(~n - 1);< 145072#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144939#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144894#factFINAL assume true; 144670#factEXIT >#76#return; 144732#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 144761#$Ultimate##0 ~n := #in~n; 146097#L25 assume !(~n <= 0); 144897#L26 call #t~ret0 := fact(~n - 1);< 144951#$Ultimate##0 ~n := #in~n; 145023#L25 assume ~n <= 0;#res := 1; 145017#factFINAL assume true; 144941#factEXIT >#66#return; 144939#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 144894#factFINAL assume true; 144670#factEXIT >#78#return; 144668#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; 143113#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 143133#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 146423#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 143124#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 143125#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 143333#L42-3 [2023-02-16 04:34:09,658 INFO L750 eck$LassoCheckResult]: Loop: 143333#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143257#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; 143205#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 143254#$Ultimate##0 ~n := #in~n; 143432#L25 assume !(~n <= 0); 143259#L26 call #t~ret0 := fact(~n - 1);< 143385#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143368#factFINAL assume true; 143269#factEXIT >#68#return; 143206#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143254#$Ultimate##0 ~n := #in~n; 143432#L25 assume ~n <= 0;#res := 1; 143514#factFINAL assume true; 143496#factEXIT >#70#return; 143311#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 143332#$Ultimate##0 ~n := #in~n; 143436#L25 assume !(~n <= 0); 143372#L26 call #t~ret0 := fact(~n - 1);< 143384#$Ultimate##0 ~n := #in~n; 143435#L25 assume !(~n <= 0); 143376#L26 call #t~ret0 := fact(~n - 1);< 143405#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143555#factFINAL assume true; 143549#factEXIT >#66#return; 143511#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143545#factFINAL assume true; 143506#factEXIT >#66#return; 143504#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143503#factFINAL assume true; 143334#factEXIT >#72#return; 143330#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; 143558#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 143557#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143556#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143554#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; 143282#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 143369#$Ultimate##0 ~n := #in~n; 143500#L25 assume !(~n <= 0); 143377#L26 call #t~ret0 := fact(~n - 1);< 143430#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143368#factFINAL assume true; 143269#factEXIT >#68#return; 143222#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143254#$Ultimate##0 ~n := #in~n; 143432#L25 assume !(~n <= 0); 143259#L26 call #t~ret0 := fact(~n - 1);< 143385#$Ultimate##0 ~n := #in~n; 143268#L25 assume ~n <= 0;#res := 1; 143267#factFINAL assume true; 143258#factEXIT >#66#return; 143256#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143253#factFINAL assume true; 143196#factEXIT >#70#return; 143245#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 143369#$Ultimate##0 ~n := #in~n; 143500#L25 assume !(~n <= 0); 143377#L26 call #t~ret0 := fact(~n - 1);< 143430#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143404#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143546#factFINAL assume true; 143515#factEXIT >#72#return; 143523#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; 143618#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 143613#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143614#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143608#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; 143315#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 143369#$Ultimate##0 ~n := #in~n; 143500#L25 assume !(~n <= 0); 143377#L26 call #t~ret0 := fact(~n - 1);< 143430#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143368#factFINAL assume true; 143269#factEXIT >#68#return; 143304#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143369#$Ultimate##0 ~n := #in~n; 143500#L25 assume !(~n <= 0); 143377#L26 call #t~ret0 := fact(~n - 1);< 143430#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143404#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143546#factFINAL assume true; 143515#factEXIT >#70#return; 143199#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 143255#$Ultimate##0 ~n := #in~n; 143367#L25 assume !(~n <= 0); 143259#L26 call #t~ret0 := fact(~n - 1);< 143385#$Ultimate##0 ~n := #in~n; 143268#L25 assume ~n <= 0;#res := 1; 143267#factFINAL assume true; 143258#factEXIT >#66#return; 143256#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143253#factFINAL assume true; 143196#factEXIT >#72#return; 143233#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; 143594#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 143534#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143528#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143526#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; 143305#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 143332#$Ultimate##0 ~n := #in~n; 143436#L25 assume !(~n <= 0); 143372#L26 call #t~ret0 := fact(~n - 1);< 143384#$Ultimate##0 ~n := #in~n; 143435#L25 assume !(~n <= 0); 143376#L26 call #t~ret0 := fact(~n - 1);< 143405#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143368#factFINAL assume true; 143269#factEXIT >#68#return; 143281#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143369#$Ultimate##0 ~n := #in~n; 143500#L25 assume !(~n <= 0); 143377#L26 call #t~ret0 := fact(~n - 1);< 143430#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143370#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143368#factFINAL assume true; 143269#factEXIT >#70#return; 143200#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 143254#$Ultimate##0 ~n := #in~n; 143432#L25 assume ~n <= 0;#res := 1; 143514#factFINAL assume true; 143496#factEXIT >#72#return; 143495#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; 143493#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 143491#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143489#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 143487#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; 143318#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 143332#$Ultimate##0 ~n := #in~n; 143436#L25 assume !(~n <= 0); 143372#L26 call #t~ret0 := fact(~n - 1);< 143384#$Ultimate##0 ~n := #in~n; 143435#L25 assume !(~n <= 0); 143376#L26 call #t~ret0 := fact(~n - 1);< 143405#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143555#factFINAL assume true; 143549#factEXIT >#66#return; 143511#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143545#factFINAL assume true; 143506#factEXIT >#66#return; 143504#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143503#factFINAL assume true; 143334#factEXIT >#74#return; 143290#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 143332#$Ultimate##0 ~n := #in~n; 143436#L25 assume !(~n <= 0); 143372#L26 call #t~ret0 := fact(~n - 1);< 143384#$Ultimate##0 ~n := #in~n; 143435#L25 assume !(~n <= 0); 143376#L26 call #t~ret0 := fact(~n - 1);< 143405#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143437#L25 assume !(~n <= 0); 143380#L26 call #t~ret0 := fact(~n - 1);< 143502#$Ultimate##0 ~n := #in~n; 143536#L25 assume ~n <= 0;#res := 1; 143535#factFINAL assume true; 143501#factEXIT >#66#return; 143431#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143406#factFINAL assume true; 143401#factEXIT >#66#return; 143400#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143386#factFINAL assume true; 143371#factEXIT >#66#return; 143383#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143555#factFINAL assume true; 143549#factEXIT >#66#return; 143511#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143545#factFINAL assume true; 143506#factEXIT >#66#return; 143504#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143503#factFINAL assume true; 143334#factEXIT >#76#return; 143223#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 143252#$Ultimate##0 ~n := #in~n; 143399#L25 assume !(~n <= 0); 143264#L26 call #t~ret0 := fact(~n - 1);< 143266#$Ultimate##0 ~n := #in~n; 143268#L25 assume ~n <= 0;#res := 1; 143267#factFINAL assume true; 143258#factEXIT >#66#return; 143256#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 143253#factFINAL assume true; 143196#factEXIT >#78#return; 143246#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; 143597#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 143596#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 143461#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 143434#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 143366#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 143333#L42-3 [2023-02-16 04:34:09,658 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:09,658 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 25 times [2023-02-16 04:34:09,659 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:09,659 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1480683353] [2023-02-16 04:34:09,659 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:09,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:09,667 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:09,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [872496879] [2023-02-16 04:34:09,668 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:34:09,668 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:09,668 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:09,672 INFO L229 MonitoredProcess]: Starting monitored process 196 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:09,673 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (196)] Waiting until timeout for monitored process [2023-02-16 04:34:09,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:09,882 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:09,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:09,984 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:09,985 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:09,985 INFO L85 PathProgramCache]: Analyzing trace with hash 1116657113, now seen corresponding path program 24 times [2023-02-16 04:34:09,985 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:09,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [243489192] [2023-02-16 04:34:09,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:09,986 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:09,993 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:09,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [818770561] [2023-02-16 04:34:09,993 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2023-02-16 04:34:09,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:09,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:09,997 INFO L229 MonitoredProcess]: Starting monitored process 197 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:09,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (197)] Waiting until timeout for monitored process [2023-02-16 04:34:10,226 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 23 check-sat command(s) [2023-02-16 04:34:10,226 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:10,228 INFO L263 TraceCheckSpWp]: Trace formula consists of 539 conjuncts, 29 conjunts are in the unsatisfiable core [2023-02-16 04:34:10,231 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:10,443 INFO L134 CoverageAnalysis]: Checked inductivity of 6701 backedges. 1487 proven. 312 refuted. 0 times theorem prover too weak. 4902 trivial. 0 not checked. [2023-02-16 04:34:10,443 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:11,703 INFO L134 CoverageAnalysis]: Checked inductivity of 6701 backedges. 1487 proven. 337 refuted. 0 times theorem prover too weak. 4877 trivial. 0 not checked. [2023-02-16 04:34:11,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:11,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [243489192] [2023-02-16 04:34:11,704 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:11,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [818770561] [2023-02-16 04:34:11,704 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [818770561] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:11,704 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:11,704 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 27] total 36 [2023-02-16 04:34:11,704 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [999467372] [2023-02-16 04:34:11,704 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:11,705 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:11,705 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:11,705 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2023-02-16 04:34:11,705 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=150, Invalid=1182, Unknown=0, NotChecked=0, Total=1332 [2023-02-16 04:34:11,705 INFO L87 Difference]: Start difference. First operand 3430 states and 6529 transitions. cyclomatic complexity: 3132 Second operand has 37 states, 32 states have (on average 2.34375) internal successors, (75), 37 states have internal predecessors, (75), 19 states have call successors, (26), 1 states have call predecessors, (26), 10 states have return successors, (31), 17 states have call predecessors, (31), 19 states have call successors, (31) [2023-02-16 04:34:14,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:14,128 INFO L93 Difference]: Finished difference Result 8225 states and 17337 transitions. [2023-02-16 04:34:14,128 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 8225 states and 17337 transitions. [2023-02-16 04:34:14,181 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 1647 [2023-02-16 04:34:14,242 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 8225 states to 8074 states and 17062 transitions. [2023-02-16 04:34:14,242 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1814 [2023-02-16 04:34:14,244 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1814 [2023-02-16 04:34:14,244 INFO L73 IsDeterministic]: Start isDeterministic. Operand 8074 states and 17062 transitions. [2023-02-16 04:34:14,245 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:14,245 INFO L218 hiAutomatonCegarLoop]: Abstraction has 8074 states and 17062 transitions. [2023-02-16 04:34:14,249 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8074 states and 17062 transitions. [2023-02-16 04:34:14,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8074 to 5191. [2023-02-16 04:34:14,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5191 states, 3196 states have (on average 1.0844806007509387) internal successors, (3466), 3201 states have internal predecessors, (3466), 1813 states have call successors, (1813), 212 states have call predecessors, (1813), 182 states have return successors, (5406), 1777 states have call predecessors, (5406), 1813 states have call successors, (5406) [2023-02-16 04:34:14,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5191 states to 5191 states and 10685 transitions. [2023-02-16 04:34:14,593 INFO L240 hiAutomatonCegarLoop]: Abstraction has 5191 states and 10685 transitions. [2023-02-16 04:34:14,593 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2023-02-16 04:34:14,594 INFO L428 stractBuchiCegarLoop]: Abstraction has 5191 states and 10685 transitions. [2023-02-16 04:34:14,594 INFO L335 stractBuchiCegarLoop]: ======== Iteration 37 ============ [2023-02-16 04:34:14,594 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 5191 states and 10685 transitions. [2023-02-16 04:34:14,614 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 755 [2023-02-16 04:34:14,614 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:14,614 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:14,616 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:14,616 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [48, 48, 33, 33, 33, 33, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:14,616 INFO L748 eck$LassoCheckResult]: Stem: 156891#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 156819#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; 156820#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 156857#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; 156892#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 158233#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158231#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; 158227#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158228#$Ultimate##0 ~n := #in~n; 158232#L25 assume ~n <= 0;#res := 1; 158230#factFINAL assume true; 158226#factEXIT >#68#return; 158222#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158223#$Ultimate##0 ~n := #in~n; 158229#L25 assume ~n <= 0;#res := 1; 158225#factFINAL assume true; 158221#factEXIT >#70#return; 158190#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158219#$Ultimate##0 ~n := #in~n; 158224#L25 assume ~n <= 0;#res := 1; 158220#factFINAL assume true; 158218#factEXIT >#72#return; 158217#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; 158216#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 158213#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158203#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158197#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; 158191#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158192#$Ultimate##0 ~n := #in~n; 158211#L25 assume !(~n <= 0); 158201#L26 call #t~ret0 := fact(~n - 1);< 158202#$Ultimate##0 ~n := #in~n; 158214#L25 assume ~n <= 0;#res := 1; 158210#factFINAL assume true; 158200#factEXIT >#66#return; 158199#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158196#factFINAL assume true; 158189#factEXIT >#74#return; 158179#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158184#$Ultimate##0 ~n := #in~n; 158183#L25 assume ~n <= 0;#res := 1; 158178#factFINAL assume true; 158180#factEXIT >#76#return; 158154#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158195#$Ultimate##0 ~n := #in~n; 158215#L25 assume !(~n <= 0); 158205#L26 call #t~ret0 := fact(~n - 1);< 158206#$Ultimate##0 ~n := #in~n; 158212#L25 assume ~n <= 0;#res := 1; 158209#factFINAL assume true; 158204#factEXIT >#66#return; 158198#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158194#factFINAL assume true; 158153#factEXIT >#78#return; 158155#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; 158284#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 158282#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158280#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158279#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; 157727#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158244#$Ultimate##0 ~n := #in~n; 158245#L25 assume !(~n <= 0); 158239#L26 call #t~ret0 := fact(~n - 1);< 158242#$Ultimate##0 ~n := #in~n; 158260#L25 assume !(~n <= 0); 158240#L26 call #t~ret0 := fact(~n - 1);< 158276#$Ultimate##0 ~n := #in~n; 158278#L25 assume ~n <= 0;#res := 1; 158277#factFINAL assume true; 158274#factEXIT >#66#return; 158275#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158288#factFINAL assume true; 158286#factEXIT >#66#return; 158285#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158283#factFINAL assume true; 158281#factEXIT >#74#return; 157733#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 157734#$Ultimate##0 ~n := #in~n; 157736#L25 assume ~n <= 0;#res := 1; 157735#factFINAL assume true; 157732#factEXIT >#76#return; 157728#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158244#$Ultimate##0 ~n := #in~n; 158245#L25 assume !(~n <= 0); 158239#L26 call #t~ret0 := fact(~n - 1);< 158242#$Ultimate##0 ~n := #in~n; 158260#L25 assume !(~n <= 0); 158240#L26 call #t~ret0 := fact(~n - 1);< 158276#$Ultimate##0 ~n := #in~n; 158278#L25 assume ~n <= 0;#res := 1; 158277#factFINAL assume true; 158274#factEXIT >#66#return; 158275#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158288#factFINAL assume true; 158286#factEXIT >#66#return; 158285#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158283#factFINAL assume true; 158281#factEXIT >#78#return; 157720#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; 157707#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 157404#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 157402#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 157400#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 157398#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 157376#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 157365#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; 157350#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 157359#$Ultimate##0 ~n := #in~n; 157454#L25 assume !(~n <= 0); 157307#L26 call #t~ret0 := fact(~n - 1);< 157419#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157381#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157362#factFINAL assume true; 157344#factEXIT >#68#return; 157096#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 157118#$Ultimate##0 ~n := #in~n; 157456#L25 assume ~n <= 0;#res := 1; 157342#factFINAL assume true; 157324#factEXIT >#70#return; 157100#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 157117#$Ultimate##0 ~n := #in~n; 157455#L25 assume !(~n <= 0); 157305#L26 call #t~ret0 := fact(~n - 1);< 157419#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157387#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157022#factFINAL assume true; 157116#factEXIT >#72#return; 157256#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; 157321#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 157320#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 157317#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 157212#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; 157103#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 157117#$Ultimate##0 ~n := #in~n; 157455#L25 assume !(~n <= 0); 157305#L26 call #t~ret0 := fact(~n - 1);< 157419#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157387#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157022#factFINAL assume true; 157116#factEXIT >#68#return; 157110#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 157118#$Ultimate##0 ~n := #in~n; 157456#L25 assume !(~n <= 0); 157305#L26 call #t~ret0 := fact(~n - 1);< 157419#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157387#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157022#factFINAL assume true; 157116#factEXIT >#70#return; 157034#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 157118#$Ultimate##0 ~n := #in~n; 157456#L25 assume ~n <= 0;#res := 1; 157342#factFINAL assume true; 157324#factEXIT >#72#return; 157326#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; 157636#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 157634#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 157632#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 157630#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; 157123#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 157209#$Ultimate##0 ~n := #in~n; 157459#L25 assume !(~n <= 0); 157311#L26 call #t~ret0 := fact(~n - 1);< 157316#$Ultimate##0 ~n := #in~n; 157526#L25 assume !(~n <= 0); 157308#L26 call #t~ret0 := fact(~n - 1);< 157498#$Ultimate##0 ~n := #in~n; 157522#L25 assume ~n <= 0;#res := 1; 157521#factFINAL assume true; 157496#factEXIT >#66#return; 157491#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157460#factFINAL assume true; 157302#factEXIT >#66#return; 157211#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157210#factFINAL assume true; 157122#factEXIT >#74#return; 157058#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 157119#$Ultimate##0 ~n := #in~n; 157361#L25 assume !(~n <= 0); 157309#L26 call #t~ret0 := fact(~n - 1);< 157414#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157387#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157022#factFINAL assume true; 157116#factEXIT >#76#return; 157059#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 157021#$Ultimate##0 ~n := #in~n; 157530#L25 assume !(~n <= 0); 157384#L26 call #t~ret0 := fact(~n - 1);< 157388#$Ultimate##0 ~n := #in~n; 157422#L25 assume ~n <= 0;#res := 1; 157407#factFINAL assume true; 157382#factEXIT >#66#return; 157387#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 157022#factFINAL assume true; 157116#factEXIT >#78#return; 157238#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; 158777#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 158142#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158138#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 158115#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 157750#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 157751#L42-3 [2023-02-16 04:34:14,617 INFO L750 eck$LassoCheckResult]: Loop: 157751#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159738#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; 159652#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159735#$Ultimate##0 ~n := #in~n; 160069#L25 assume !(~n <= 0); 159745#L26 call #t~ret0 := fact(~n - 1);< 159934#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159996#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160093#factFINAL assume true; 160088#factEXIT >#68#return; 159634#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159735#$Ultimate##0 ~n := #in~n; 160069#L25 assume ~n <= 0;#res := 1; 160067#factFINAL assume true; 160026#factEXIT >#70#return; 159781#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159910#$Ultimate##0 ~n := #in~n; 159989#L25 assume !(~n <= 0); 159922#L26 call #t~ret0 := fact(~n - 1);< 160003#$Ultimate##0 ~n := #in~n; 160068#L25 assume !(~n <= 0); 159924#L26 call #t~ret0 := fact(~n - 1);< 160021#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159984#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159977#factFINAL assume true; 159973#factEXIT >#66#return; 159931#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159936#factFINAL assume true; 159913#factEXIT >#66#return; 159912#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159908#factFINAL assume true; 159877#factEXIT >#72#return; 159872#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; 160121#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160120#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160119#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160118#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; 159822#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159909#$Ultimate##0 ~n := #in~n; 160090#L25 assume !(~n <= 0); 159914#L26 call #t~ret0 := fact(~n - 1);< 160036#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159996#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160093#factFINAL assume true; 160088#factEXIT >#68#return; 159651#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159735#$Ultimate##0 ~n := #in~n; 160069#L25 assume !(~n <= 0); 159745#L26 call #t~ret0 := fact(~n - 1);< 159934#$Ultimate##0 ~n := #in~n; 159752#L25 assume ~n <= 0;#res := 1; 159749#factFINAL assume true; 159739#factEXIT >#66#return; 159737#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159734#factFINAL assume true; 159627#factEXIT >#70#return; 159706#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159909#$Ultimate##0 ~n := #in~n; 160090#L25 assume !(~n <= 0); 159914#L26 call #t~ret0 := fact(~n - 1);< 160036#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160018#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160092#factFINAL assume true; 160070#factEXIT >#72#return; 160083#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; 160107#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160106#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160105#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160104#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; 159844#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159909#$Ultimate##0 ~n := #in~n; 160090#L25 assume !(~n <= 0); 159914#L26 call #t~ret0 := fact(~n - 1);< 160036#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159996#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160093#factFINAL assume true; 160088#factEXIT >#68#return; 159757#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159909#$Ultimate##0 ~n := #in~n; 160090#L25 assume !(~n <= 0); 159914#L26 call #t~ret0 := fact(~n - 1);< 160036#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160018#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160092#factFINAL assume true; 160070#factEXIT >#70#return; 159688#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159736#$Ultimate##0 ~n := #in~n; 159753#L25 assume !(~n <= 0); 159745#L26 call #t~ret0 := fact(~n - 1);< 159934#$Ultimate##0 ~n := #in~n; 159752#L25 assume ~n <= 0;#res := 1; 159749#factFINAL assume true; 159739#factEXIT >#66#return; 159737#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159734#factFINAL assume true; 159627#factEXIT >#72#return; 159729#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; 160097#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160096#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160095#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160094#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; 159856#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159910#$Ultimate##0 ~n := #in~n; 159989#L25 assume !(~n <= 0); 159922#L26 call #t~ret0 := fact(~n - 1);< 160003#$Ultimate##0 ~n := #in~n; 160068#L25 assume !(~n <= 0); 159924#L26 call #t~ret0 := fact(~n - 1);< 160021#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159996#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160093#factFINAL assume true; 160088#factEXIT >#68#return; 159784#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159909#$Ultimate##0 ~n := #in~n; 160090#L25 assume !(~n <= 0); 159914#L26 call #t~ret0 := fact(~n - 1);< 160036#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160018#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160092#factFINAL assume true; 160070#factEXIT >#70#return; 159641#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159735#$Ultimate##0 ~n := #in~n; 160069#L25 assume ~n <= 0;#res := 1; 160067#factFINAL assume true; 160026#factEXIT >#72#return; 160024#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#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 160016#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 160013#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 160001#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; 159771#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159910#$Ultimate##0 ~n := #in~n; 159989#L25 assume !(~n <= 0); 159922#L26 call #t~ret0 := fact(~n - 1);< 160003#$Ultimate##0 ~n := #in~n; 160068#L25 assume !(~n <= 0); 159924#L26 call #t~ret0 := fact(~n - 1);< 160021#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159984#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159977#factFINAL assume true; 159973#factEXIT >#66#return; 159974#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159988#factFINAL assume true; 159756#factEXIT >#74#return; 159848#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159910#$Ultimate##0 ~n := #in~n; 159989#L25 assume !(~n <= 0); 159922#L26 call #t~ret0 := fact(~n - 1);< 160003#$Ultimate##0 ~n := #in~n; 160068#L25 assume !(~n <= 0); 159924#L26 call #t~ret0 := fact(~n - 1);< 160021#$Ultimate##0 ~n := #in~n; 160064#L25 assume !(~n <= 0); 159927#L26 call #t~ret0 := fact(~n - 1);< 160063#$Ultimate##0 ~n := #in~n; 160091#L25 assume ~n <= 0;#res := 1; 160089#factFINAL assume true; 160062#factEXIT >#66#return; 160061#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160035#factFINAL assume true; 160017#factEXIT >#66#return; 160014#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159995#factEXIT >#66#return; 159996#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160093#factFINAL assume true; 160088#factEXIT >#76#return; 159667#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159733#$Ultimate##0 ~n := #in~n; 159935#L25 assume !(~n <= 0); 159742#L26 call #t~ret0 := fact(~n - 1);< 159748#$Ultimate##0 ~n := #in~n; 159752#L25 assume ~n <= 0;#res := 1; 159749#factFINAL assume true; 159739#factEXIT >#66#return; 159737#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159734#factFINAL assume true; 159627#factEXIT >#78#return; 159717#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; 156858#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 156859#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 156895#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 156854#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 156855#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 157751#L42-3 [2023-02-16 04:34:14,618 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:14,618 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 26 times [2023-02-16 04:34:14,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:14,618 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1465848054] [2023-02-16 04:34:14,618 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:14,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:14,627 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:14,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1675115438] [2023-02-16 04:34:14,628 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:34:14,628 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:14,628 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:14,631 INFO L229 MonitoredProcess]: Starting monitored process 198 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:14,632 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (198)] Waiting until timeout for monitored process [2023-02-16 04:34:14,854 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:34:14,854 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:14,855 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:14,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:14,946 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:14,947 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:14,947 INFO L85 PathProgramCache]: Analyzing trace with hash 749761433, now seen corresponding path program 25 times [2023-02-16 04:34:14,947 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:14,947 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [817487157] [2023-02-16 04:34:14,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:14,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:14,957 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:14,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1484824179] [2023-02-16 04:34:14,957 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2023-02-16 04:34:14,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:14,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:14,961 INFO L229 MonitoredProcess]: Starting monitored process 199 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:14,962 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (199)] Waiting until timeout for monitored process [2023-02-16 04:34:15,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-02-16 04:34:15,182 INFO L263 TraceCheckSpWp]: Trace formula consists of 659 conjuncts, 28 conjunts are in the unsatisfiable core [2023-02-16 04:34:15,188 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:15,377 INFO L134 CoverageAnalysis]: Checked inductivity of 5633 backedges. 2730 proven. 358 refuted. 0 times theorem prover too weak. 2545 trivial. 0 not checked. [2023-02-16 04:34:15,377 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:16,658 INFO L134 CoverageAnalysis]: Checked inductivity of 5633 backedges. 118 proven. 1695 refuted. 0 times theorem prover too weak. 3820 trivial. 0 not checked. [2023-02-16 04:34:16,658 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:16,658 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [817487157] [2023-02-16 04:34:16,658 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:16,658 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1484824179] [2023-02-16 04:34:16,659 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1484824179] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:16,659 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:16,659 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 25] total 31 [2023-02-16 04:34:16,659 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [818796292] [2023-02-16 04:34:16,659 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:16,660 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:16,660 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:16,660 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2023-02-16 04:34:16,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=121, Invalid=809, Unknown=0, NotChecked=0, Total=930 [2023-02-16 04:34:16,661 INFO L87 Difference]: Start difference. First operand 5191 states and 10685 transitions. cyclomatic complexity: 5527 Second operand has 31 states, 25 states have (on average 3.0) internal successors, (75), 29 states have internal predecessors, (75), 18 states have call successors, (34), 2 states have call predecessors, (34), 11 states have return successors, (39), 16 states have call predecessors, (39), 18 states have call successors, (39) [2023-02-16 04:34:17,913 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:17,913 INFO L93 Difference]: Finished difference Result 6232 states and 12017 transitions. [2023-02-16 04:34:17,913 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 6232 states and 12017 transitions. [2023-02-16 04:34:17,949 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 853 [2023-02-16 04:34:17,988 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 6232 states to 5782 states and 11305 transitions. [2023-02-16 04:34:17,988 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1238 [2023-02-16 04:34:17,989 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1238 [2023-02-16 04:34:17,989 INFO L73 IsDeterministic]: Start isDeterministic. Operand 5782 states and 11305 transitions. [2023-02-16 04:34:17,989 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:17,989 INFO L218 hiAutomatonCegarLoop]: Abstraction has 5782 states and 11305 transitions. [2023-02-16 04:34:17,992 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 5782 states and 11305 transitions. [2023-02-16 04:34:18,095 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 5782 to 5207. [2023-02-16 04:34:18,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5207 states, 3212 states have (on average 1.0840597758405977) internal successors, (3482), 3209 states have internal predecessors, (3482), 1813 states have call successors, (1813), 220 states have call predecessors, (1813), 182 states have return successors, (5292), 1777 states have call predecessors, (5292), 1813 states have call successors, (5292) [2023-02-16 04:34:18,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5207 states to 5207 states and 10587 transitions. [2023-02-16 04:34:18,214 INFO L240 hiAutomatonCegarLoop]: Abstraction has 5207 states and 10587 transitions. [2023-02-16 04:34:18,221 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2023-02-16 04:34:18,221 INFO L428 stractBuchiCegarLoop]: Abstraction has 5207 states and 10587 transitions. [2023-02-16 04:34:18,221 INFO L335 stractBuchiCegarLoop]: ======== Iteration 38 ============ [2023-02-16 04:34:18,221 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 5207 states and 10587 transitions. [2023-02-16 04:34:18,239 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 755 [2023-02-16 04:34:18,239 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:18,239 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:18,240 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:18,241 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [46, 46, 31, 31, 31, 31, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:18,241 INFO L748 eck$LassoCheckResult]: Stem: 170184#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 170115#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; 170116#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 170146#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; 170185#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 172901#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 172899#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; 172895#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 172896#$Ultimate##0 ~n := #in~n; 172900#L25 assume ~n <= 0;#res := 1; 172898#factFINAL assume true; 172894#factEXIT >#68#return; 172890#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 172891#$Ultimate##0 ~n := #in~n; 172897#L25 assume ~n <= 0;#res := 1; 172893#factFINAL assume true; 172889#factEXIT >#70#return; 172863#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 172887#$Ultimate##0 ~n := #in~n; 172892#L25 assume ~n <= 0;#res := 1; 172888#factFINAL assume true; 172886#factEXIT >#72#return; 172885#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; 172883#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 172880#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 172876#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 172873#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; 172864#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 172865#$Ultimate##0 ~n := #in~n; 172882#L25 assume !(~n <= 0); 172878#L26 call #t~ret0 := fact(~n - 1);< 172879#$Ultimate##0 ~n := #in~n; 172884#L25 assume ~n <= 0;#res := 1; 172881#factFINAL assume true; 172877#factEXIT >#66#return; 172874#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172871#factFINAL assume true; 172862#factEXIT >#74#return; 172858#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 172859#$Ultimate##0 ~n := #in~n; 172869#L25 assume ~n <= 0;#res := 1; 172861#factFINAL assume true; 172857#factEXIT >#76#return; 172853#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 172854#$Ultimate##0 ~n := #in~n; 172870#L25 assume !(~n <= 0); 172867#L26 call #t~ret0 := fact(~n - 1);< 172868#$Ultimate##0 ~n := #in~n; 172875#L25 assume ~n <= 0;#res := 1; 172872#factFINAL assume true; 172866#factEXIT >#66#return; 172860#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172856#factFINAL assume true; 172852#factEXIT >#78#return; 172849#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; 172847#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 172845#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 172843#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 172841#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; 170976#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 171721#$Ultimate##0 ~n := #in~n; 171722#L25 assume !(~n <= 0); 171715#L26 call #t~ret0 := fact(~n - 1);< 171718#$Ultimate##0 ~n := #in~n; 172831#L25 assume !(~n <= 0); 171716#L26 call #t~ret0 := fact(~n - 1);< 172838#$Ultimate##0 ~n := #in~n; 172840#L25 assume ~n <= 0;#res := 1; 172839#factFINAL assume true; 172836#factEXIT >#66#return; 172837#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172855#factFINAL assume true; 172850#factEXIT >#66#return; 172848#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172846#factFINAL assume true; 170974#factEXIT >#74#return; 170977#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 170982#$Ultimate##0 ~n := #in~n; 170984#L25 assume ~n <= 0;#res := 1; 170983#factFINAL assume true; 170980#factEXIT >#76#return; 170975#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 171721#$Ultimate##0 ~n := #in~n; 171722#L25 assume !(~n <= 0); 171715#L26 call #t~ret0 := fact(~n - 1);< 171718#$Ultimate##0 ~n := #in~n; 172831#L25 assume !(~n <= 0); 171716#L26 call #t~ret0 := fact(~n - 1);< 172838#$Ultimate##0 ~n := #in~n; 172840#L25 assume ~n <= 0;#res := 1; 172839#factFINAL assume true; 172836#factEXIT >#66#return; 172837#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172855#factFINAL assume true; 172850#factEXIT >#66#return; 172848#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 172846#factFINAL assume true; 170974#factEXIT >#78#return; 170972#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; 170970#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 170967#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 170966#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 170965#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 170964#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 170962#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 170663#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; 170646#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 170657#$Ultimate##0 ~n := #in~n; 170736#L25 assume !(~n <= 0); 170602#L26 call #t~ret0 := fact(~n - 1);< 170698#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170677#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170660#factFINAL assume true; 170643#factEXIT >#68#return; 170622#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 170639#$Ultimate##0 ~n := #in~n; 170659#L25 assume ~n <= 0;#res := 1; 170641#factFINAL assume true; 170620#factEXIT >#70#return; 170354#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 170413#$Ultimate##0 ~n := #in~n; 170731#L25 assume !(~n <= 0); 170601#L26 call #t~ret0 := fact(~n - 1);< 170698#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170683#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170320#factFINAL assume true; 170412#factEXIT >#72#return; 170531#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; 170617#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 170616#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 170613#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 170508#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; 170359#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 170413#$Ultimate##0 ~n := #in~n; 170731#L25 assume !(~n <= 0); 170601#L26 call #t~ret0 := fact(~n - 1);< 170698#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170683#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170320#factFINAL assume true; 170412#factEXIT >#68#return; 170387#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 170414#$Ultimate##0 ~n := #in~n; 170730#L25 assume !(~n <= 0); 170601#L26 call #t~ret0 := fact(~n - 1);< 170698#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170683#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170320#factFINAL assume true; 170412#factEXIT >#70#return; 170392#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 170414#$Ultimate##0 ~n := #in~n; 170730#L25 assume ~n <= 0;#res := 1; 170641#factFINAL assume true; 170620#factEXIT >#72#return; 170628#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; 170879#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 170878#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 170876#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 170871#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; 170486#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 170505#$Ultimate##0 ~n := #in~n; 170748#L25 assume !(~n <= 0); 170605#L26 call #t~ret0 := fact(~n - 1);< 170612#$Ultimate##0 ~n := #in~n; 170801#L25 assume !(~n <= 0); 170604#L26 call #t~ret0 := fact(~n - 1);< 170785#$Ultimate##0 ~n := #in~n; 170804#L25 assume ~n <= 0;#res := 1; 170799#factFINAL assume true; 170782#factEXIT >#66#return; 170776#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170752#factFINAL assume true; 170598#factEXIT >#66#return; 170507#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170506#factFINAL assume true; 170418#factEXIT >#74#return; 170411#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 170415#$Ultimate##0 ~n := #in~n; 170738#L25 assume !(~n <= 0); 170603#L26 call #t~ret0 := fact(~n - 1);< 170702#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170683#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170320#factFINAL assume true; 170412#factEXIT >#76#return; 170321#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 170319#$Ultimate##0 ~n := #in~n; 170906#L25 assume !(~n <= 0); 170681#L26 call #t~ret0 := fact(~n - 1);< 170684#$Ultimate##0 ~n := #in~n; 170739#L25 assume ~n <= 0;#res := 1; 170701#factFINAL assume true; 170678#factEXIT >#66#return; 170683#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 170320#factFINAL assume true; 170412#factEXIT >#78#return; 170509#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; 171409#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 170960#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 170958#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 170952#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 170953#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 171057#L42-3 [2023-02-16 04:34:18,241 INFO L750 eck$LassoCheckResult]: Loop: 171057#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 173000#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; 172991#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 172992#$Ultimate##0 ~n := #in~n; 173430#L25 assume !(~n <= 0); 173216#L26 call #t~ret0 := fact(~n - 1);< 173402#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#68#return; 173302#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 173321#$Ultimate##0 ~n := #in~n; 173348#L25 assume ~n <= 0;#res := 1; 173320#factFINAL assume true; 173300#factEXIT >#70#return; 173071#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 170181#$Ultimate##0 ~n := #in~n; 173285#L25 assume !(~n <= 0); 173219#L26 call #t~ret0 := fact(~n - 1);< 173276#$Ultimate##0 ~n := #in~n; 173275#L25 assume !(~n <= 0); 173218#L26 call #t~ret0 := fact(~n - 1);< 173243#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#72#return; 173326#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; 173491#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 173490#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 173488#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 173202#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; 173133#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 173201#$Ultimate##0 ~n := #in~n; 173424#L25 assume !(~n <= 0); 173206#L26 call #t~ret0 := fact(~n - 1);< 173245#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#68#return; 172993#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 172992#$Ultimate##0 ~n := #in~n; 173430#L25 assume !(~n <= 0); 173216#L26 call #t~ret0 := fact(~n - 1);< 173402#$Ultimate##0 ~n := #in~n; 173423#L25 assume ~n <= 0;#res := 1; 173404#factFINAL assume true; 173396#factEXIT >#66#return; 173395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173394#factFINAL assume true; 173363#factEXIT >#70#return; 173047#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 173201#$Ultimate##0 ~n := #in~n; 173424#L25 assume !(~n <= 0); 173206#L26 call #t~ret0 := fact(~n - 1);< 173245#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173239#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173350#factFINAL assume true; 173331#factEXIT >#72#return; 173343#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; 173433#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 173432#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 173429#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 173428#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; 173127#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 173201#$Ultimate##0 ~n := #in~n; 173424#L25 assume !(~n <= 0); 173206#L26 call #t~ret0 := fact(~n - 1);< 173245#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#68#return; 173067#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 173201#$Ultimate##0 ~n := #in~n; 173424#L25 assume !(~n <= 0); 173206#L26 call #t~ret0 := fact(~n - 1);< 173245#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173239#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173350#factFINAL assume true; 173331#factEXIT >#70#return; 173037#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 172995#$Ultimate##0 ~n := #in~n; 173431#L25 assume !(~n <= 0); 173216#L26 call #t~ret0 := fact(~n - 1);< 173402#$Ultimate##0 ~n := #in~n; 173423#L25 assume ~n <= 0;#res := 1; 173404#factFINAL assume true; 173396#factEXIT >#66#return; 173395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173394#factFINAL assume true; 173363#factEXIT >#72#return; 173362#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; 173361#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 173360#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 173358#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 173353#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; 173104#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 170181#$Ultimate##0 ~n := #in~n; 173285#L25 assume !(~n <= 0); 173219#L26 call #t~ret0 := fact(~n - 1);< 173276#$Ultimate##0 ~n := #in~n; 173275#L25 assume !(~n <= 0); 173218#L26 call #t~ret0 := fact(~n - 1);< 173243#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#68#return; 173091#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 173201#$Ultimate##0 ~n := #in~n; 173424#L25 assume !(~n <= 0); 173206#L26 call #t~ret0 := fact(~n - 1);< 173245#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173239#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173350#factFINAL assume true; 173331#factEXIT >#70#return; 173041#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 172992#$Ultimate##0 ~n := #in~n; 173430#L25 assume ~n <= 0;#res := 1; 173320#factFINAL assume true; 173300#factEXIT >#72#return; 173299#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; 173297#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 173296#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 173295#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 173293#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; 173130#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 170181#$Ultimate##0 ~n := #in~n; 173285#L25 assume !(~n <= 0); 173219#L26 call #t~ret0 := fact(~n - 1);< 173276#$Ultimate##0 ~n := #in~n; 173275#L25 assume !(~n <= 0); 173218#L26 call #t~ret0 := fact(~n - 1);< 173243#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173462#factFINAL assume true; 173205#factEXIT >#66#return; 173203#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173204#factFINAL assume true; 173001#factEXIT >#74#return; 173120#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 170181#$Ultimate##0 ~n := #in~n; 173285#L25 assume !(~n <= 0); 173219#L26 call #t~ret0 := fact(~n - 1);< 173276#$Ultimate##0 ~n := #in~n; 173275#L25 assume !(~n <= 0); 173218#L26 call #t~ret0 := fact(~n - 1);< 173243#$Ultimate##0 ~n := #in~n; 173273#L25 assume !(~n <= 0); 173207#L26 call #t~ret0 := fact(~n - 1);< 173271#$Ultimate##0 ~n := #in~n; 173274#L25 assume ~n <= 0;#res := 1; 173272#factFINAL assume true; 173270#factEXIT >#66#return; 173269#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173244#factFINAL assume true; 173238#factEXIT >#66#return; 173240#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173359#factFINAL assume true; 173354#factEXIT >#66#return; 173351#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173349#factFINAL assume true; 173322#factEXIT >#76#return; 173328#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 170187#$Ultimate##0 ~n := #in~n; 173422#L25 assume !(~n <= 0); 173399#L26 call #t~ret0 := fact(~n - 1);< 173403#$Ultimate##0 ~n := #in~n; 173423#L25 assume ~n <= 0;#res := 1; 173404#factFINAL assume true; 173396#factEXIT >#66#return; 173395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 173394#factFINAL assume true; 173363#factEXIT >#78#return; 173391#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; 170195#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 170190#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 170191#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 170138#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 170139#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 171057#L42-3 [2023-02-16 04:34:18,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:18,242 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 27 times [2023-02-16 04:34:18,242 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:18,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [452273241] [2023-02-16 04:34:18,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:18,243 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:18,251 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:18,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [360938335] [2023-02-16 04:34:18,251 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:34:18,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:18,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:18,255 INFO L229 MonitoredProcess]: Starting monitored process 200 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:18,256 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (200)] Waiting until timeout for monitored process [2023-02-16 04:34:18,509 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 23 check-sat command(s) [2023-02-16 04:34:18,509 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:18,510 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:18,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:18,605 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:18,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:18,605 INFO L85 PathProgramCache]: Analyzing trace with hash -601297063, now seen corresponding path program 26 times [2023-02-16 04:34:18,606 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:18,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [382484074] [2023-02-16 04:34:18,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:18,606 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:18,615 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:18,616 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [204279691] [2023-02-16 04:34:18,616 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-02-16 04:34:18,616 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:18,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:18,620 INFO L229 MonitoredProcess]: Starting monitored process 201 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:18,638 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (201)] Waiting until timeout for monitored process [2023-02-16 04:34:18,861 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-02-16 04:34:18,862 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:18,866 INFO L263 TraceCheckSpWp]: Trace formula consists of 635 conjuncts, 30 conjunts are in the unsatisfiable core [2023-02-16 04:34:18,869 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:19,065 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 2381 proven. 790 refuted. 0 times theorem prover too weak. 1964 trivial. 0 not checked. [2023-02-16 04:34:19,066 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:20,004 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 387 proven. 1302 refuted. 0 times theorem prover too weak. 3446 trivial. 0 not checked. [2023-02-16 04:34:20,004 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:20,004 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [382484074] [2023-02-16 04:34:20,004 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:20,005 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [204279691] [2023-02-16 04:34:20,005 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [204279691] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:20,005 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:20,005 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 23] total 27 [2023-02-16 04:34:20,005 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [304895703] [2023-02-16 04:34:20,005 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-02-16 04:34:20,005 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-02-16 04:34:20,005 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-02-16 04:34:20,005 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2023-02-16 04:34:20,006 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=601, Unknown=0, NotChecked=0, Total=702 [2023-02-16 04:34:20,006 INFO L87 Difference]: Start difference. First operand 5207 states and 10587 transitions. cyclomatic complexity: 5413 Second operand has 27 states, 22 states have (on average 3.227272727272727) internal successors, (71), 25 states have internal predecessors, (71), 17 states have call successors, (32), 2 states have call predecessors, (32), 9 states have return successors, (35), 14 states have call predecessors, (35), 17 states have call successors, (35) [2023-02-16 04:34:21,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-02-16 04:34:21,337 INFO L93 Difference]: Finished difference Result 5818 states and 11376 transitions. [2023-02-16 04:34:21,338 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5818 states and 11376 transitions. [2023-02-16 04:34:21,370 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 810 [2023-02-16 04:34:21,411 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5818 states to 5812 states and 11367 transitions. [2023-02-16 04:34:21,411 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1216 [2023-02-16 04:34:21,412 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1216 [2023-02-16 04:34:21,412 INFO L73 IsDeterministic]: Start isDeterministic. Operand 5812 states and 11367 transitions. [2023-02-16 04:34:21,412 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-02-16 04:34:21,412 INFO L218 hiAutomatonCegarLoop]: Abstraction has 5812 states and 11367 transitions. [2023-02-16 04:34:21,414 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 5812 states and 11367 transitions. [2023-02-16 04:34:21,530 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 5812 to 5219. [2023-02-16 04:34:21,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5219 states, 3220 states have (on average 1.0838509316770186) internal successors, (3490), 3217 states have internal predecessors, (3490), 1817 states have call successors, (1817), 224 states have call predecessors, (1817), 182 states have return successors, (5024), 1777 states have call predecessors, (5024), 1817 states have call successors, (5024) [2023-02-16 04:34:21,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5219 states to 5219 states and 10331 transitions. [2023-02-16 04:34:21,564 INFO L240 hiAutomatonCegarLoop]: Abstraction has 5219 states and 10331 transitions. [2023-02-16 04:34:21,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-02-16 04:34:21,564 INFO L428 stractBuchiCegarLoop]: Abstraction has 5219 states and 10331 transitions. [2023-02-16 04:34:21,565 INFO L335 stractBuchiCegarLoop]: ======== Iteration 39 ============ [2023-02-16 04:34:21,565 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 5219 states and 10331 transitions. [2023-02-16 04:34:21,582 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 755 [2023-02-16 04:34:21,582 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-02-16 04:34:21,582 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-02-16 04:34:21,584 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [32, 32, 18, 14, 14, 14, 14, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1] [2023-02-16 04:34:21,584 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [47, 47, 32, 32, 32, 32, 15, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-02-16 04:34:21,585 INFO L748 eck$LassoCheckResult]: Stem: 183054#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true; 182973#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; 182974#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 183011#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; 183055#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 184462#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184460#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; 184456#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 184457#$Ultimate##0 ~n := #in~n; 184461#L25 assume ~n <= 0;#res := 1; 184459#factFINAL assume true; 184455#factEXIT >#68#return; 184451#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 184452#$Ultimate##0 ~n := #in~n; 184458#L25 assume ~n <= 0;#res := 1; 184454#factFINAL assume true; 184450#factEXIT >#70#return; 184424#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 184448#$Ultimate##0 ~n := #in~n; 184453#L25 assume ~n <= 0;#res := 1; 184449#factFINAL assume true; 184447#factEXIT >#72#return; 184446#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; 184445#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 184444#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184441#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184437#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; 184425#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 184426#$Ultimate##0 ~n := #in~n; 184436#L25 assume !(~n <= 0); 184434#L26 call #t~ret0 := fact(~n - 1);< 184435#$Ultimate##0 ~n := #in~n; 184443#L25 assume ~n <= 0;#res := 1; 184440#factFINAL assume true; 184433#factEXIT >#66#return; 184432#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184431#factFINAL assume true; 184423#factEXIT >#74#return; 184419#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 184420#$Ultimate##0 ~n := #in~n; 184430#L25 assume ~n <= 0;#res := 1; 184422#factFINAL assume true; 184418#factEXIT >#76#return; 184414#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 184415#$Ultimate##0 ~n := #in~n; 184439#L25 assume !(~n <= 0); 184428#L26 call #t~ret0 := fact(~n - 1);< 184429#$Ultimate##0 ~n := #in~n; 184442#L25 assume ~n <= 0;#res := 1; 184438#factFINAL assume true; 184427#factEXIT >#66#return; 184421#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184417#factFINAL assume true; 184413#factEXIT >#78#return; 184410#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; 184408#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 184406#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184404#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 184402#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; 184364#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 184401#$Ultimate##0 ~n := #in~n; 184400#L25 assume !(~n <= 0); 184378#L26 call #t~ret0 := fact(~n - 1);< 184383#$Ultimate##0 ~n := #in~n; 184390#L25 assume !(~n <= 0); 184379#L26 call #t~ret0 := fact(~n - 1);< 184396#$Ultimate##0 ~n := #in~n; 184398#L25 assume ~n <= 0;#res := 1; 184397#factFINAL assume true; 184394#factEXIT >#66#return; 184395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184416#factFINAL assume true; 184411#factEXIT >#66#return; 184409#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184407#factFINAL assume true; 184405#factEXIT >#74#return; 184370#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 184371#$Ultimate##0 ~n := #in~n; 184373#L25 assume ~n <= 0;#res := 1; 184372#factFINAL assume true; 184369#factEXIT >#76#return; 184360#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 184401#$Ultimate##0 ~n := #in~n; 184400#L25 assume !(~n <= 0); 184378#L26 call #t~ret0 := fact(~n - 1);< 184383#$Ultimate##0 ~n := #in~n; 184390#L25 assume !(~n <= 0); 184379#L26 call #t~ret0 := fact(~n - 1);< 184396#$Ultimate##0 ~n := #in~n; 184398#L25 assume ~n <= 0;#res := 1; 184397#factFINAL assume true; 184394#factEXIT >#66#return; 184395#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184416#factFINAL assume true; 184411#factEXIT >#66#return; 184409#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 184407#factFINAL assume true; 184405#factEXIT >#78#return; 184357#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; 184257#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 183912#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 183886#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 183880#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 183598#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 183568#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 183543#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; 183518#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183524#$Ultimate##0 ~n := #in~n; 183655#L25 assume !(~n <= 0); 183379#L26 call #t~ret0 := fact(~n - 1);< 183575#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183548#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183540#factFINAL assume true; 183510#factEXIT >#68#return; 183488#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183506#$Ultimate##0 ~n := #in~n; 183539#L25 assume ~n <= 0;#res := 1; 183508#factFINAL assume true; 183487#factEXIT >#70#return; 183222#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183280#$Ultimate##0 ~n := #in~n; 183644#L25 assume !(~n <= 0); 183387#L26 call #t~ret0 := fact(~n - 1);< 183575#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183187#factFINAL assume true; 183279#factEXIT >#72#return; 183351#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; 183396#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 183395#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 183392#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 183329#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; 183278#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183280#$Ultimate##0 ~n := #in~n; 183644#L25 assume !(~n <= 0); 183387#L26 call #t~ret0 := fact(~n - 1);< 183575#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183187#factFINAL assume true; 183279#factEXIT >#68#return; 183190#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183281#$Ultimate##0 ~n := #in~n; 183643#L25 assume !(~n <= 0); 183387#L26 call #t~ret0 := fact(~n - 1);< 183575#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183187#factFINAL assume true; 183279#factEXIT >#70#return; 183191#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183281#$Ultimate##0 ~n := #in~n; 183643#L25 assume ~n <= 0;#res := 1; 183508#factFINAL assume true; 183487#factEXIT >#72#return; 183492#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; 183741#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 183739#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 183737#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 183736#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; 183291#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183326#$Ultimate##0 ~n := #in~n; 183657#L25 assume !(~n <= 0); 183385#L26 call #t~ret0 := fact(~n - 1);< 183538#$Ultimate##0 ~n := #in~n; 183717#L25 assume !(~n <= 0); 183381#L26 call #t~ret0 := fact(~n - 1);< 183713#$Ultimate##0 ~n := #in~n; 183719#L25 assume ~n <= 0;#res := 1; 183716#factFINAL assume true; 183711#factEXIT >#66#return; 183708#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183685#factFINAL assume true; 183377#factEXIT >#66#return; 183328#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183327#factFINAL assume true; 183285#factEXIT >#74#return; 183235#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183282#$Ultimate##0 ~n := #in~n; 183913#L25 assume !(~n <= 0); 183383#L26 call #t~ret0 := fact(~n - 1);< 183391#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183187#factFINAL assume true; 183279#factEXIT >#76#return; 183239#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183186#$Ultimate##0 ~n := #in~n; 183729#L25 assume !(~n <= 0); 183571#L26 call #t~ret0 := fact(~n - 1);< 183576#$Ultimate##0 ~n := #in~n; 183647#L25 assume ~n <= 0;#res := 1; 183636#factFINAL assume true; 183569#factEXIT >#66#return; 183574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 183187#factFINAL assume true; 183279#factEXIT >#78#return; 183360#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; 185211#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 184332#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 184331#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 184329#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 184210#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 184211#L42-3 [2023-02-16 04:34:21,586 INFO L750 eck$LassoCheckResult]: Loop: 184211#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 185878#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; 185872#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 185873#$Ultimate##0 ~n := #in~n; 186169#L25 assume !(~n <= 0); 186068#L26 call #t~ret0 := fact(~n - 1);< 186270#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#68#return; 186146#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 186166#$Ultimate##0 ~n := #in~n; 186168#L25 assume ~n <= 0;#res := 1; 186167#factFINAL assume true; 186145#factEXIT >#70#return; 185899#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183052#$Ultimate##0 ~n := #in~n; 186351#L25 assume !(~n <= 0); 186061#L26 call #t~ret0 := fact(~n - 1);< 186244#$Ultimate##0 ~n := #in~n; 186518#L25 assume !(~n <= 0); 186063#L26 call #t~ret0 := fact(~n - 1);< 186123#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#72#return; 186183#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; 186209#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 186208#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 186198#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 186192#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; 185880#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 186052#$Ultimate##0 ~n := #in~n; 186452#L25 assume !(~n <= 0); 186064#L26 call #t~ret0 := fact(~n - 1);< 186125#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#68#return; 185874#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 185873#$Ultimate##0 ~n := #in~n; 186169#L25 assume !(~n <= 0); 186068#L26 call #t~ret0 := fact(~n - 1);< 186270#$Ultimate##0 ~n := #in~n; 186293#L25 assume ~n <= 0;#res := 1; 186272#factFINAL assume true; 186264#factEXIT >#66#return; 186263#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186262#factFINAL assume true; 186214#factEXIT >#70#return; 185924#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 186052#$Ultimate##0 ~n := #in~n; 186452#L25 assume !(~n <= 0); 186064#L26 call #t~ret0 := fact(~n - 1);< 186125#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186315#factFINAL assume true; 186299#factEXIT >#72#return; 186310#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; 186323#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 186321#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 186319#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 186317#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; 185995#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 186052#$Ultimate##0 ~n := #in~n; 186452#L25 assume !(~n <= 0); 186064#L26 call #t~ret0 := fact(~n - 1);< 186125#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#68#return; 185914#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 186052#$Ultimate##0 ~n := #in~n; 186452#L25 assume !(~n <= 0); 186064#L26 call #t~ret0 := fact(~n - 1);< 186125#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186315#factFINAL assume true; 186299#factEXIT >#70#return; 186020#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 185876#$Ultimate##0 ~n := #in~n; 186292#L25 assume !(~n <= 0); 186068#L26 call #t~ret0 := fact(~n - 1);< 186270#$Ultimate##0 ~n := #in~n; 186293#L25 assume ~n <= 0;#res := 1; 186272#factFINAL assume true; 186264#factEXIT >#66#return; 186263#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186262#factFINAL assume true; 186214#factEXIT >#72#return; 186242#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; 186298#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 186297#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 186296#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 186295#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; 186019#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183052#$Ultimate##0 ~n := #in~n; 186351#L25 assume !(~n <= 0); 186061#L26 call #t~ret0 := fact(~n - 1);< 186244#$Ultimate##0 ~n := #in~n; 186518#L25 assume !(~n <= 0); 186063#L26 call #t~ret0 := fact(~n - 1);< 186123#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#68#return; 185951#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183052#$Ultimate##0 ~n := #in~n; 186351#L25 assume !(~n <= 0); 186061#L26 call #t~ret0 := fact(~n - 1);< 186244#$Ultimate##0 ~n := #in~n; 186518#L25 assume !(~n <= 0); 186063#L26 call #t~ret0 := fact(~n - 1);< 186123#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#70#return; 185976#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 185873#$Ultimate##0 ~n := #in~n; 186169#L25 assume ~n <= 0;#res := 1; 186167#factFINAL assume true; 186145#factEXIT >#72#return; 186163#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; 186261#binomialCoefficient_returnLabel#1 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 186213#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 186207#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 186205#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; 185928#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 183052#$Ultimate##0 ~n := #in~n; 186351#L25 assume !(~n <= 0); 186061#L26 call #t~ret0 := fact(~n - 1);< 186244#$Ultimate##0 ~n := #in~n; 186518#L25 assume !(~n <= 0); 186063#L26 call #t~ret0 := fact(~n - 1);< 186123#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186072#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186117#factFINAL assume true; 186193#factEXIT >#66#return; 186195#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186050#factFINAL assume true; 185879#factEXIT >#74#return; 186000#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 183052#$Ultimate##0 ~n := #in~n; 186351#L25 assume !(~n <= 0); 186061#L26 call #t~ret0 := fact(~n - 1);< 186244#$Ultimate##0 ~n := #in~n; 186518#L25 assume !(~n <= 0); 186063#L26 call #t~ret0 := fact(~n - 1);< 186123#$Ultimate##0 ~n := #in~n; 186143#L25 assume !(~n <= 0); 186060#L26 call #t~ret0 := fact(~n - 1);< 186141#$Ultimate##0 ~n := #in~n; 186144#L25 assume ~n <= 0;#res := 1; 186142#factFINAL assume true; 186140#factEXIT >#66#return; 186139#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186124#factFINAL assume true; 186118#factEXIT >#66#return; 186121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186103#factFINAL assume true; 186058#factEXIT >#66#return; 186054#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186055#factFINAL assume true; 186182#factEXIT >#76#return; 186188#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 183057#$Ultimate##0 ~n := #in~n; 186294#L25 assume !(~n <= 0); 186266#L26 call #t~ret0 := fact(~n - 1);< 186271#$Ultimate##0 ~n := #in~n; 186293#L25 assume ~n <= 0;#res := 1; 186272#factFINAL assume true; 186264#factEXIT >#66#return; 186263#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 186262#factFINAL assume true; 186214#factEXIT >#78#return; 186240#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; 183064#binomialCoefficient_returnLabel#2 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 183061#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 183062#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 183007#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 183008#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 184211#L42-3 [2023-02-16 04:34:21,586 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:21,586 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 28 times [2023-02-16 04:34:21,586 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:21,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1532344084] [2023-02-16 04:34:21,587 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:21,587 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:21,594 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:21,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1958625799] [2023-02-16 04:34:21,594 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-02-16 04:34:21,595 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:21,595 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:21,597 INFO L229 MonitoredProcess]: Starting monitored process 202 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:21,598 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (202)] Waiting until timeout for monitored process [2023-02-16 04:34:21,792 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-02-16 04:34:21,793 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:21,793 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:21,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:21,868 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:21,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:21,869 INFO L85 PathProgramCache]: Analyzing trace with hash 10230353, now seen corresponding path program 27 times [2023-02-16 04:34:21,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:21,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [167247762] [2023-02-16 04:34:21,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:21,869 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:21,876 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:21,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1512961951] [2023-02-16 04:34:21,876 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-02-16 04:34:21,876 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:21,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:21,880 INFO L229 MonitoredProcess]: Starting monitored process 203 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:21,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (203)] Waiting until timeout for monitored process [2023-02-16 04:34:22,464 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 30 check-sat command(s) [2023-02-16 04:34:22,464 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2023-02-16 04:34:22,464 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-02-16 04:34:22,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-02-16 04:34:22,681 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-02-16 04:34:22,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2023-02-16 04:34:22,681 INFO L85 PathProgramCache]: Analyzing trace with hash 1336296194, now seen corresponding path program 29 times [2023-02-16 04:34:22,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-02-16 04:34:22,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1065575976] [2023-02-16 04:34:22,682 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-02-16 04:34:22,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-02-16 04:34:22,691 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2023-02-16 04:34:22,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [519910926] [2023-02-16 04:34:22,691 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-02-16 04:34:22,692 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-02-16 04:34:22,692 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-02-16 04:34:22,696 INFO L229 MonitoredProcess]: Starting monitored process 204 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-02-16 04:34:22,697 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (204)] Waiting until timeout for monitored process [2023-02-16 04:34:22,925 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 12 check-sat command(s) [2023-02-16 04:34:22,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-02-16 04:34:22,927 INFO L263 TraceCheckSpWp]: Trace formula consists of 591 conjuncts, 19 conjunts are in the unsatisfiable core [2023-02-16 04:34:22,931 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2023-02-16 04:34:23,070 INFO L134 CoverageAnalysis]: Checked inductivity of 14739 backedges. 7955 proven. 157 refuted. 0 times theorem prover too weak. 6627 trivial. 0 not checked. [2023-02-16 04:34:23,070 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2023-02-16 04:34:23,683 INFO L134 CoverageAnalysis]: Checked inductivity of 14739 backedges. 685 proven. 771 refuted. 0 times theorem prover too weak. 13283 trivial. 0 not checked. [2023-02-16 04:34:23,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-02-16 04:34:23,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1065575976] [2023-02-16 04:34:23,683 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2023-02-16 04:34:23,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [519910926] [2023-02-16 04:34:23,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [519910926] provided 0 perfect and 2 imperfect interpolant sequences [2023-02-16 04:34:23,683 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-02-16 04:34:23,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 16] total 21 [2023-02-16 04:34:23,684 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1498159304] [2023-02-16 04:34:23,684 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton