./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 791161d1 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-?-791161d [2022-07-23 14:17:07,865 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-23 14:17:07,867 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-23 14:17:07,908 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-23 14:17:07,909 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-23 14:17:07,910 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-23 14:17:07,911 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-23 14:17:07,914 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-23 14:17:07,916 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-23 14:17:07,921 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-23 14:17:07,922 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-23 14:17:07,923 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-23 14:17:07,923 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-23 14:17:07,925 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-23 14:17:07,926 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-23 14:17:07,927 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-23 14:17:07,928 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-23 14:17:07,930 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-23 14:17:07,933 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-23 14:17:07,935 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-23 14:17:07,939 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-23 14:17:07,940 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-23 14:17:07,941 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-23 14:17:07,942 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-23 14:17:07,943 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-23 14:17:07,947 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-23 14:17:07,947 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-23 14:17:07,948 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-23 14:17:07,948 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-23 14:17:07,949 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-23 14:17:07,950 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-23 14:17:07,950 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-23 14:17:07,951 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-23 14:17:07,952 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-23 14:17:07,953 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-23 14:17:07,953 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-23 14:17:07,953 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-23 14:17:07,954 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-23 14:17:07,954 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-23 14:17:07,954 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-23 14:17:07,955 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-23 14:17:07,957 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-23 14:17:07,958 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2022-07-23 14:17:07,987 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-23 14:17:07,988 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-23 14:17:07,988 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-23 14:17:07,988 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-23 14:17:07,989 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-23 14:17:07,990 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-23 14:17:07,990 INFO L138 SettingsManager]: * Use SBE=true [2022-07-23 14:17:07,990 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-23 14:17:07,990 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-23 14:17:07,991 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-23 14:17:07,991 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-23 14:17:07,992 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-23 14:17:07,992 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-23 14:17:07,992 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-23 14:17:07,992 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-23 14:17:07,992 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-23 14:17:07,993 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-23 14:17:07,993 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-23 14:17:07,993 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-23 14:17:07,993 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-23 14:17:07,994 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-23 14:17:07,994 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-23 14:17:07,995 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-23 14:17:07,995 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-23 14:17:07,995 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-23 14:17:07,995 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-23 14:17:07,996 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-23 14:17:07,996 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-23 14:17:07,997 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-23 14:17:07,997 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(F end) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c204b56aba09d3ce87e17edffdff1d33aa0b4dc87a1e1140339548dffa982588 [2022-07-23 14:17:08,205 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-23 14:17:08,226 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-23 14:17:08,228 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-23 14:17:08,229 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-23 14:17:08,230 INFO L275 PluginConnector]: CDTParser initialized [2022-07-23 14:17:08,231 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/Binomial.c [2022-07-23 14:17:08,283 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcd5fbb0d/88d9062c7847430097c324fc54ff7e04/FLAGa0d9dc07e [2022-07-23 14:17:08,635 INFO L306 CDTParser]: Found 1 translation units. [2022-07-23 14:17:08,635 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-numeric/Binomial.c [2022-07-23 14:17:08,640 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcd5fbb0d/88d9062c7847430097c324fc54ff7e04/FLAGa0d9dc07e [2022-07-23 14:17:08,648 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcd5fbb0d/88d9062c7847430097c324fc54ff7e04 [2022-07-23 14:17:08,650 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-23 14:17:08,652 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-07-23 14:17:08,653 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-23 14:17:08,653 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-23 14:17:08,655 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-23 14:17:08,656 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,657 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7296d46f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08, skipping insertion in model container [2022-07-23 14:17:08,657 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,662 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-23 14:17:08,671 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-23 14:17:08,793 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-23 14:17:08,806 INFO L203 MainTranslator]: Completed pre-run [2022-07-23 14:17:08,834 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-23 14:17:08,843 INFO L208 MainTranslator]: Completed translation [2022-07-23 14:17:08,843 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08 WrapperNode [2022-07-23 14:17:08,843 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-23 14:17:08,844 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-23 14:17:08,845 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-23 14:17:08,845 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-23 14:17:08,852 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,855 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,876 INFO L137 Inliner]: procedures = 6, calls = 8, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 55 [2022-07-23 14:17:08,876 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-23 14:17:08,877 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-23 14:17:08,877 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-23 14:17:08,878 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-23 14:17:08,883 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,883 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,885 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,886 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,891 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,895 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,899 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,901 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-23 14:17:08,902 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-23 14:17:08,903 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-23 14:17:08,903 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-23 14:17:08,904 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (1/1) ... [2022-07-23 14:17:08,909 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:08,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:08,936 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:08,963 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2022-07-23 14:17:08,982 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2022-07-23 14:17:08,983 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2022-07-23 14:17:08,983 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-23 14:17:08,984 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-23 14:17:09,032 INFO L234 CfgBuilder]: Building ICFG [2022-07-23 14:17:09,034 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-23 14:17:09,178 INFO L275 CfgBuilder]: Performing block encoding [2022-07-23 14:17:09,192 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-23 14:17:09,192 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-07-23 14:17:09,194 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.07 02:17:09 BoogieIcfgContainer [2022-07-23 14:17:09,194 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-23 14:17:09,195 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-23 14:17:09,195 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-23 14:17:09,213 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-23 14:17:09,214 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-23 14:17:09,214 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.07 02:17:08" (1/3) ... [2022-07-23 14:17:09,215 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@bc42b2d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.07 02:17:09, skipping insertion in model container [2022-07-23 14:17:09,215 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-23 14:17:09,215 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.07 02:17:08" (2/3) ... [2022-07-23 14:17:09,216 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@bc42b2d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.07 02:17:09, skipping insertion in model container [2022-07-23 14:17:09,216 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-23 14:17:09,216 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.07 02:17:09" (3/3) ... [2022-07-23 14:17:09,217 INFO L354 chiAutomizerObserver]: Analyzing ICFG Binomial.c [2022-07-23 14:17:09,279 INFO L255 stractBuchiCegarLoop]: Interprodecural is true [2022-07-23 14:17:09,279 INFO L256 stractBuchiCegarLoop]: Hoare is false [2022-07-23 14:17:09,280 INFO L257 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-23 14:17:09,280 INFO L258 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-23 14:17:09,280 INFO L259 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-23 14:17:09,280 INFO L260 stractBuchiCegarLoop]: Difference is false [2022-07-23 14:17:09,280 INFO L261 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-23 14:17:09,280 INFO L265 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-23 14:17:09,284 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-23 14:17:09,303 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-23 14:17:09,303 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:09,303 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:09,308 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-23 14:17:09,308 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-23 14:17:09,308 INFO L287 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-23 14:17:09,308 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-23 14:17:09,311 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-23 14:17:09,312 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:09,312 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:09,313 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-23 14:17:09,313 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-23 14:17:09,318 INFO L752 eck$LassoCheckResult]: Stem: 18#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true; 9#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 17#L35true assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 27#L38true assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 13#L41-3true [2022-07-23 14:17:09,318 INFO L754 eck$LassoCheckResult]: Loop: 13#L41-3true assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 22#L42-3true assume !(main_~k~0#1 <= main_~x~0#1); 14#L41-2true main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 13#L41-3true [2022-07-23 14:17:09,327 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:09,328 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 1 times [2022-07-23 14:17:09,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:09,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [33730591] [2022-07-23 14:17:09,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:09,338 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:09,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:09,399 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:09,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:09,416 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:09,419 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:09,419 INFO L85 PathProgramCache]: Analyzing trace with hash 57812, now seen corresponding path program 1 times [2022-07-23 14:17:09,419 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:09,420 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1317464697] [2022-07-23 14:17:09,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:09,421 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:09,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:09,441 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:09,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:09,452 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:09,454 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:09,454 INFO L85 PathProgramCache]: Analyzing trace with hash 553673357, now seen corresponding path program 1 times [2022-07-23 14:17:09,454 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:09,454 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [718321553] [2022-07-23 14:17:09,455 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:09,455 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:09,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:09,520 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:09,521 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:09,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [718321553] [2022-07-23 14:17:09,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [718321553] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-23 14:17:09,522 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-23 14:17:09,523 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-23 14:17:09,523 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1695735161] [2022-07-23 14:17:09,524 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-23 14:17:09,585 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:09,586 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:09,586 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:09,586 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:09,586 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:09,587 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:09,587 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:09,587 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:09,587 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2022-07-23 14:17:09,587 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:09,588 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:09,601 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:09,607 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:09,662 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:09,663 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:09,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:09,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:09,671 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:09,686 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:09,686 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:09,697 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2022-07-23 14:17:09,714 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:09,714 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:09,740 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:09,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:09,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:09,742 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:09,754 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:09,754 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:09,765 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2022-07-23 14:17:09,804 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:09,805 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:09,805 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:09,806 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:09,809 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2022-07-23 14:17:09,810 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:09,810 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:09,995 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:09,999 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:09,999 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:09,999 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:10,000 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:10,000 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:10,000 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:10,000 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:10,000 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:10,000 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:10,000 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2022-07-23 14:17:10,000 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:10,000 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:10,002 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:10,005 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:10,061 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:10,065 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:10,066 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:10,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:10,080 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:10,125 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2022-07-23 14:17:10,125 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:10,143 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:10,143 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:10,143 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:10,143 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:10,144 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:10,145 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:10,145 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:10,159 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:10,215 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:10,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:10,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:10,228 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:10,230 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2022-07-23 14:17:10,231 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:10,238 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:10,238 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:10,239 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:10,239 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:10,239 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:10,241 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:10,241 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:10,252 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:10,260 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-23 14:17:10,260 INFO L444 ModelExtractionUtils]: 1 out of 5 variables were initially zero. Simplification set additionally 2 variables to zero. [2022-07-23 14:17:10,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:10,261 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:10,267 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:10,272 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:10,272 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:10,272 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2022-07-23 14:17:10,272 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:10,273 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -1*ULTIMATE.start_main_~n~0#1 Supporting invariants [] [2022-07-23 14:17:10,288 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2022-07-23 14:17:10,290 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:10,317 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:10,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:10,326 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-23 14:17:10,327 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:10,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:10,343 WARN L261 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-23 14:17:10,344 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:10,402 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:10,427 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2022-07-23 14:17:10,428 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-23 14:17:10,495 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 28 states, 19 states have (on average 1.4210526315789473) internal successors, (27), 19 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7). Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 73 states and 106 transitions. Complement of second has 11 states. [2022-07-23 14:17:10,496 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:10,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-23 14:17:10,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-07-23 14:17:10,502 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 3 letters. [2022-07-23 14:17:10,503 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:10,503 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 7 letters. Loop has 3 letters. [2022-07-23 14:17:10,503 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:10,503 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 54 transitions. Stem has 4 letters. Loop has 6 letters. [2022-07-23 14:17:10,503 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:10,504 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 73 states and 106 transitions. [2022-07-23 14:17:10,509 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2022-07-23 14:17:10,514 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 73 states to 33 states and 48 transitions. [2022-07-23 14:17:10,515 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2022-07-23 14:17:10,515 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 30 [2022-07-23 14:17:10,516 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33 states and 48 transitions. [2022-07-23 14:17:10,516 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:10,516 INFO L369 hiAutomatonCegarLoop]: Abstraction has 33 states and 48 transitions. [2022-07-23 14:17:10,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states and 48 transitions. [2022-07-23 14:17:10,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 30. [2022-07-23 14:17:10,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-23 14:17:10,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 42 transitions. [2022-07-23 14:17:10,543 INFO L392 hiAutomatonCegarLoop]: Abstraction has 30 states and 42 transitions. [2022-07-23 14:17:10,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:10,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-23 14:17:10,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-23 14:17:10,545 INFO L87 Difference]: Start difference. First operand 30 states and 42 transitions. Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-23 14:17:10,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:10,587 INFO L93 Difference]: Finished difference Result 29 states and 38 transitions. [2022-07-23 14:17:10,587 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-07-23 14:17:10,588 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 38 transitions. [2022-07-23 14:17:10,589 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2022-07-23 14:17:10,590 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 28 states and 37 transitions. [2022-07-23 14:17:10,591 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2022-07-23 14:17:10,592 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2022-07-23 14:17:10,592 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 37 transitions. [2022-07-23 14:17:10,592 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-23 14:17:10,592 INFO L369 hiAutomatonCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-07-23 14:17:10,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 37 transitions. [2022-07-23 14:17:10,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 26. [2022-07-23 14:17:10,595 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 17 states have internal predecessors, (21), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-07-23 14:17:10,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 35 transitions. [2022-07-23 14:17:10,595 INFO L392 hiAutomatonCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-07-23 14:17:10,595 INFO L374 stractBuchiCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-07-23 14:17:10,596 INFO L287 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-23 14:17:10,596 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 26 states and 35 transitions. [2022-07-23 14:17:10,597 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 19 [2022-07-23 14:17:10,597 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:10,597 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:10,598 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2022-07-23 14:17:10,598 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:10,598 INFO L752 eck$LassoCheckResult]: Stem: 242#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 233#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 234#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 241#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 237#L41-3 [2022-07-23 14:17:10,599 INFO L754 eck$LassoCheckResult]: Loop: 237#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 238#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 243#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 224#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#68#return; 226#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#70#return; 222#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 220#factENTRY ~n := #in~n; 232#L25 assume ~n <= 0;#res := 1; 231#factFINAL assume true; 221#factEXIT >#72#return; 228#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 239#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 236#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 244#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 240#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 237#L41-3 [2022-07-23 14:17:10,599 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:10,600 INFO L85 PathProgramCache]: Analyzing trace with hash 1171944, now seen corresponding path program 2 times [2022-07-23 14:17:10,600 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:10,600 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1547674260] [2022-07-23 14:17:10,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:10,600 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:10,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,604 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:10,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,607 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:10,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:10,608 INFO L85 PathProgramCache]: Analyzing trace with hash -743603515, now seen corresponding path program 1 times [2022-07-23 14:17:10,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:10,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1084508009] [2022-07-23 14:17:10,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:10,609 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:10,632 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:10,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1358664042] [2022-07-23 14:17:10,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:10,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:10,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:10,634 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:10,638 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-07-23 14:17:10,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,669 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:10,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,685 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:10,686 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:10,686 INFO L85 PathProgramCache]: Analyzing trace with hash 343305470, now seen corresponding path program 1 times [2022-07-23 14:17:10,686 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:10,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [423931579] [2022-07-23 14:17:10,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:10,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:10,697 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:10,697 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [763936428] [2022-07-23 14:17:10,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:10,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:10,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:10,732 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:10,733 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-07-23 14:17:10,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,768 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:10,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:10,787 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:10,979 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,110 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:11,111 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:11,111 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:11,111 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:11,111 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:11,111 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,111 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:11,112 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:11,112 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2022-07-23 14:17:11,112 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:11,112 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:11,113 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,116 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,118 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,121 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,123 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,125 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,127 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,130 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,239 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:11,240 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:11,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,241 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,242 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2022-07-23 14:17:11,246 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,246 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,267 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,268 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,292 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,293 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,294 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,302 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,302 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,311 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2022-07-23 14:17:11,320 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,320 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret9#1=0} Honda state: {ULTIMATE.start_main_#t~ret9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,346 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,347 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,354 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2022-07-23 14:17:11,355 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,355 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,362 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,362 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,380 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,381 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2022-07-23 14:17:11,382 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,382 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,389 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,389 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,404 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,404 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,404 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,405 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,406 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2022-07-23 14:17:11,407 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,407 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,415 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,415 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,433 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,434 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,436 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2022-07-23 14:17:11,436 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,436 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,443 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,443 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,459 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Ended with exit code 0 [2022-07-23 14:17:11,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,461 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,461 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2022-07-23 14:17:11,462 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,462 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,469 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:11,469 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:11,484 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2022-07-23 14:17:11,484 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,484 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,485 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2022-07-23 14:17:11,487 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:11,487 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,539 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,539 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,539 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:11,540 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:11,544 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2022-07-23 14:17:11,545 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:11,545 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:11,916 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:11,921 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:11,921 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:11,921 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:11,921 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:11,921 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:11,921 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:11,921 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:11,922 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:11,922 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:11,922 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2022-07-23 14:17:11,923 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:11,923 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:11,925 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,927 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,929 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,931 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,933 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,935 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,937 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:11,939 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:12,037 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:12,038 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:12,038 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,038 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,040 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2022-07-23 14:17:12,050 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,058 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,058 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,059 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,059 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,059 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,060 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,060 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,071 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,090 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 [2022-07-23 14:17:12,090 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,091 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,092 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2022-07-23 14:17:12,096 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,104 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,104 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,104 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,104 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,104 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,105 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,105 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,108 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,122 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:12,123 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,123 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,123 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,124 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2022-07-23 14:17:12,125 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,130 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,130 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,131 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,131 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,131 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,131 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,131 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,139 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,156 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:12,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,157 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,158 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2022-07-23 14:17:12,159 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,164 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,165 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,165 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,165 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,165 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,165 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,165 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,166 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,181 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:12,181 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,182 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,183 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2022-07-23 14:17:12,184 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,189 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,189 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,189 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,189 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,189 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,190 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,190 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,201 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,216 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:12,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,217 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,222 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,222 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2022-07-23 14:17:12,227 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,227 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,227 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,227 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,227 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,228 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,228 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,246 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,261 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Ended with exit code 0 [2022-07-23 14:17:12,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,262 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,263 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2022-07-23 14:17:12,264 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,269 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,270 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,270 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,270 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,270 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,270 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,270 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,282 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:12,297 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2022-07-23 14:17:12,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,298 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,298 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2022-07-23 14:17:12,300 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:12,308 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:12,308 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:12,308 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:12,308 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:12,308 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:12,312 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:12,312 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:12,335 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:12,352 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-23 14:17:12,352 INFO L444 ModelExtractionUtils]: 5 out of 9 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-23 14:17:12,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:12,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,360 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,361 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2022-07-23 14:17:12,361 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:12,362 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:12,362 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:12,362 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 1 Supporting invariants [] [2022-07-23 14:17:12,377 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:12,378 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:12,407 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:12,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:12,412 INFO L263 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-23 14:17:12,413 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:12,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:12,446 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:12,448 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:12,569 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-07-23 14:17:12,569 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 6 loop predicates [2022-07-23 14:17:12,570 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 26 states and 35 transitions. cyclomatic complexity: 11 Second operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-07-23 14:17:12,714 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 [2022-07-23 14:17:12,832 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 26 states and 35 transitions. cyclomatic complexity: 11. Second operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Result 117 states and 182 transitions. Complement of second has 26 states. [2022-07-23 14:17:12,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 8 states 1 stem states 6 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:12,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 8 states have internal predecessors, (18), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-07-23 14:17:12,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 74 transitions. [2022-07-23 14:17:12,835 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 4 letters. Loop has 23 letters. [2022-07-23 14:17:12,836 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:12,836 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 27 letters. Loop has 23 letters. [2022-07-23 14:17:12,836 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:12,837 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 74 transitions. Stem has 4 letters. Loop has 46 letters. [2022-07-23 14:17:12,837 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:12,837 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 117 states and 182 transitions. [2022-07-23 14:17:12,842 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 33 [2022-07-23 14:17:12,846 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 117 states to 116 states and 181 transitions. [2022-07-23 14:17:12,846 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 59 [2022-07-23 14:17:12,847 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2022-07-23 14:17:12,847 INFO L73 IsDeterministic]: Start isDeterministic. Operand 116 states and 181 transitions. [2022-07-23 14:17:12,847 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:12,847 INFO L369 hiAutomatonCegarLoop]: Abstraction has 116 states and 181 transitions. [2022-07-23 14:17:12,847 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states and 181 transitions. [2022-07-23 14:17:12,860 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 105. [2022-07-23 14:17:12,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 68 states have internal predecessors, (82), 30 states have call successors, (30), 6 states have call predecessors, (30), 8 states have return successors, (42), 30 states have call predecessors, (42), 30 states have call successors, (42) [2022-07-23 14:17:12,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 154 transitions. [2022-07-23 14:17:12,862 INFO L392 hiAutomatonCegarLoop]: Abstraction has 105 states and 154 transitions. [2022-07-23 14:17:12,862 INFO L374 stractBuchiCegarLoop]: Abstraction has 105 states and 154 transitions. [2022-07-23 14:17:12,862 INFO L287 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-23 14:17:12,862 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 105 states and 154 transitions. [2022-07-23 14:17:12,864 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 32 [2022-07-23 14:17:12,864 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:12,864 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:12,865 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-23 14:17:12,865 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:12,866 INFO L752 eck$LassoCheckResult]: Stem: 556#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 536#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 537#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 555#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 565#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 546#L42-3 [2022-07-23 14:17:12,866 INFO L754 eck$LassoCheckResult]: Loop: 546#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 560#L43 assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 574#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#68#return; 576#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#70#return; 514#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 515#factENTRY ~n := #in~n; 580#L25 assume !(~n <= 0); 502#L26 call #t~ret0 := fact(~n - 1);< 542#factENTRY ~n := #in~n; 586#L25 assume ~n <= 0;#res := 1; 582#factFINAL assume true; 500#factEXIT >#66#return; 506#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 579#factFINAL assume true; 578#factEXIT >#72#return; 571#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 569#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 567#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 566#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 553#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 545#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 546#L42-3 [2022-07-23 14:17:12,866 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:12,866 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 1 times [2022-07-23 14:17:12,867 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:12,867 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1061459138] [2022-07-23 14:17:12,867 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:12,867 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:12,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:12,871 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:12,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:12,874 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:12,874 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:12,874 INFO L85 PathProgramCache]: Analyzing trace with hash 471779129, now seen corresponding path program 1 times [2022-07-23 14:17:12,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:12,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519798845] [2022-07-23 14:17:12,875 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:12,875 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:12,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:12,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2087008951] [2022-07-23 14:17:12,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:12,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:12,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:12,883 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:12,901 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-07-23 14:17:12,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:12,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-23 14:17:12,925 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:13,014 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 8 proven. 35 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-07-23 14:17:13,015 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:13,219 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 8 proven. 36 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-07-23 14:17:13,219 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:13,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [519798845] [2022-07-23 14:17:13,219 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:13,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2087008951] [2022-07-23 14:17:13,219 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2087008951] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:13,220 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:13,220 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10] total 13 [2022-07-23 14:17:13,220 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1825008361] [2022-07-23 14:17:13,220 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:13,220 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:13,220 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:13,221 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-07-23 14:17:13,221 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-07-23 14:17:13,221 INFO L87 Difference]: Start difference. First operand 105 states and 154 transitions. cyclomatic complexity: 54 Second operand has 13 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 7 states have call successors, (7), 1 states have call predecessors, (7), 4 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-07-23 14:17:13,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:13,535 INFO L93 Difference]: Finished difference Result 307 states and 482 transitions. [2022-07-23 14:17:13,535 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-07-23 14:17:13,536 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 307 states and 482 transitions. [2022-07-23 14:17:13,541 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 112 [2022-07-23 14:17:13,547 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 307 states to 307 states and 482 transitions. [2022-07-23 14:17:13,548 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 151 [2022-07-23 14:17:13,548 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 151 [2022-07-23 14:17:13,548 INFO L73 IsDeterministic]: Start isDeterministic. Operand 307 states and 482 transitions. [2022-07-23 14:17:13,548 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:13,548 INFO L369 hiAutomatonCegarLoop]: Abstraction has 307 states and 482 transitions. [2022-07-23 14:17:13,549 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 307 states and 482 transitions. [2022-07-23 14:17:13,568 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 307 to 149. [2022-07-23 14:17:13,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 149 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 88 states have internal predecessors, (102), 46 states have call successors, (46), 10 states have call predecessors, (46), 16 states have return successors, (116), 50 states have call predecessors, (116), 46 states have call successors, (116) [2022-07-23 14:17:13,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 264 transitions. [2022-07-23 14:17:13,571 INFO L392 hiAutomatonCegarLoop]: Abstraction has 149 states and 264 transitions. [2022-07-23 14:17:13,571 INFO L374 stractBuchiCegarLoop]: Abstraction has 149 states and 264 transitions. [2022-07-23 14:17:13,572 INFO L287 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-23 14:17:13,572 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 149 states and 264 transitions. [2022-07-23 14:17:13,573 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 40 [2022-07-23 14:17:13,573 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:13,573 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:13,574 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-23 14:17:13,574 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:13,574 INFO L752 eck$LassoCheckResult]: Stem: 1232#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 1210#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 1211#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1231#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; 1258#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1221#L42-3 [2022-07-23 14:17:13,575 INFO L754 eck$LassoCheckResult]: Loop: 1221#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1233#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; 1234#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 1263#factENTRY ~n := #in~n; 1270#L25 assume !(~n <= 0); 1186#L26 call #t~ret0 := fact(~n - 1);< 1216#factENTRY ~n := #in~n; 1261#L25 assume !(~n <= 0); 1185#L26 call #t~ret0 := fact(~n - 1);< 1216#factENTRY ~n := #in~n; 1261#L25 assume ~n <= 0;#res := 1; 1200#factFINAL assume true; 1184#factEXIT >#66#return; 1188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1303#factFINAL assume true; 1301#factEXIT >#66#return; 1302#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 1312#factFINAL assume true; 1279#factEXIT >#68#return; 1265#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 1263#factENTRY ~n := #in~n; 1270#L25 assume ~n <= 0;#res := 1; 1254#factFINAL assume true; 1283#factEXIT >#70#return; 1267#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 1263#factENTRY ~n := #in~n; 1270#L25 assume ~n <= 0;#res := 1; 1254#factFINAL assume true; 1283#factEXIT >#72#return; 1224#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 1225#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 1306#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 1305#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1229#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1220#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1221#L42-3 [2022-07-23 14:17:13,575 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:13,575 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 2 times [2022-07-23 14:17:13,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:13,576 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1922519616] [2022-07-23 14:17:13,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:13,576 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:13,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:13,581 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:13,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:13,584 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:13,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:13,584 INFO L85 PathProgramCache]: Analyzing trace with hash -2146445903, now seen corresponding path program 2 times [2022-07-23 14:17:13,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:13,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1987459260] [2022-07-23 14:17:13,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:13,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:13,591 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:13,591 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [642267769] [2022-07-23 14:17:13,591 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:13,591 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:13,591 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:13,592 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:13,594 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-07-23 14:17:13,626 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:13,627 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:13,627 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-23 14:17:13,629 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:13,696 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 14 proven. 15 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-07-23 14:17:13,697 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:13,895 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 13 proven. 14 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-07-23 14:17:13,896 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:13,896 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1987459260] [2022-07-23 14:17:13,896 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:13,896 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [642267769] [2022-07-23 14:17:13,896 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [642267769] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:13,897 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:13,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-07-23 14:17:13,897 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2051526291] [2022-07-23 14:17:13,897 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:13,897 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:13,898 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:13,898 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-07-23 14:17:13,898 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=143, Unknown=0, NotChecked=0, Total=182 [2022-07-23 14:17:13,898 INFO L87 Difference]: Start difference. First operand 149 states and 264 transitions. cyclomatic complexity: 120 Second operand has 14 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 8 states have call successors, (8), 1 states have call predecessors, (8), 4 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-07-23 14:17:14,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:14,260 INFO L93 Difference]: Finished difference Result 377 states and 584 transitions. [2022-07-23 14:17:14,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-07-23 14:17:14,261 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 377 states and 584 transitions. [2022-07-23 14:17:14,266 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 123 [2022-07-23 14:17:14,271 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 377 states to 365 states and 564 transitions. [2022-07-23 14:17:14,271 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 178 [2022-07-23 14:17:14,272 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 178 [2022-07-23 14:17:14,272 INFO L73 IsDeterministic]: Start isDeterministic. Operand 365 states and 564 transitions. [2022-07-23 14:17:14,272 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:14,272 INFO L369 hiAutomatonCegarLoop]: Abstraction has 365 states and 564 transitions. [2022-07-23 14:17:14,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 365 states and 564 transitions. [2022-07-23 14:17:14,289 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 365 to 183. [2022-07-23 14:17:14,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 183 states, 107 states have (on average 1.1401869158878504) internal successors, (122), 102 states have internal predecessors, (122), 60 states have call successors, (60), 20 states have call predecessors, (60), 16 states have return successors, (126), 60 states have call predecessors, (126), 60 states have call successors, (126) [2022-07-23 14:17:14,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 183 states to 183 states and 308 transitions. [2022-07-23 14:17:14,292 INFO L392 hiAutomatonCegarLoop]: Abstraction has 183 states and 308 transitions. [2022-07-23 14:17:14,292 INFO L374 stractBuchiCegarLoop]: Abstraction has 183 states and 308 transitions. [2022-07-23 14:17:14,292 INFO L287 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2022-07-23 14:17:14,292 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 183 states and 308 transitions. [2022-07-23 14:17:14,294 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 45 [2022-07-23 14:17:14,294 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:14,294 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:14,295 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2022-07-23 14:17:14,295 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [7, 7, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:14,295 INFO L752 eck$LassoCheckResult]: Stem: 1997#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 1972#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~post8#1, main_~k~0#1, main_#t~post7#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; 1973#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1996#L38 assume !(main_~y~0#1 < 0);main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0; 2034#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1987#L42-3 [2022-07-23 14:17:14,296 INFO L754 eck$LassoCheckResult]: Loop: 1987#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 1998#L43 assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1; 2000#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 2095#factENTRY ~n := #in~n; 2112#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume !(~n <= 0); 1945#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1948#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2087#factFINAL assume true; 2084#factEXIT >#66#return; 2081#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2082#factFINAL assume true; 2062#factEXIT >#74#return; 2009#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 2095#factENTRY ~n := #in~n; 2112#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1949#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2011#factFINAL assume true; 2059#factEXIT >#76#return; 2005#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 2109#factENTRY ~n := #in~n; 2111#L25 assume !(~n <= 0); 1946#L26 call #t~ret0 := fact(~n - 1);< 1980#factENTRY ~n := #in~n; 2098#L25 assume ~n <= 0;#res := 1; 1964#factFINAL assume true; 1944#factEXIT >#66#return; 1949#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 2011#factFINAL assume true; 2059#factEXIT >#78#return; 2060#L30-8 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 2116#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 2115#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 2114#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 1994#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 1986#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 1987#L42-3 [2022-07-23 14:17:14,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:14,296 INFO L85 PathProgramCache]: Analyzing trace with hash 36330292, now seen corresponding path program 3 times [2022-07-23 14:17:14,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:14,297 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057551094] [2022-07-23 14:17:14,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:14,297 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:14,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:14,301 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:14,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:14,304 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:14,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:14,304 INFO L85 PathProgramCache]: Analyzing trace with hash 1703111285, now seen corresponding path program 1 times [2022-07-23 14:17:14,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:14,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1438590081] [2022-07-23 14:17:14,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:14,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:14,311 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:14,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [914781521] [2022-07-23 14:17:14,311 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:14,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:14,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:14,315 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:14,342 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-07-23 14:17:14,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:14,368 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:14,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:14,392 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:14,392 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:14,392 INFO L85 PathProgramCache]: Analyzing trace with hash 1023536866, now seen corresponding path program 1 times [2022-07-23 14:17:14,393 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:14,393 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [211911195] [2022-07-23 14:17:14,393 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:14,393 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:14,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:14,413 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-07-23 14:17:14,416 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:14,416 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [211911195] [2022-07-23 14:17:14,416 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2022-07-23 14:17:14,416 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [969923820] [2022-07-23 14:17:14,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:14,416 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:14,417 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:14,423 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:14,441 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-07-23 14:17:14,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:14,461 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 3 conjunts are in the unsatisfiable core [2022-07-23 14:17:14,462 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:14,481 INFO L134 CoverageAnalysis]: Checked inductivity of 98 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-23 14:17:14,481 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-23 14:17:14,481 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [969923820] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-23 14:17:14,482 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-23 14:17:14,482 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-23 14:17:14,482 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [129309712] [2022-07-23 14:17:14,482 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-23 14:17:15,134 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:15,134 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:15,134 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:15,134 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:15,134 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:15,134 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,134 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:15,134 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:15,134 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2022-07-23 14:17:15,134 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:15,134 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:15,135 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,137 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,138 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,140 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,141 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,142 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,174 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,348 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:15,348 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:15,348 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,351 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,356 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,356 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,365 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2022-07-23 14:17:15,367 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:15,367 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:15,382 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 [2022-07-23 14:17:15,382 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,383 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,384 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2022-07-23 14:17:15,385 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,385 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,391 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:15,391 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret10#1=0} Honda state: {ULTIMATE.start_main_#t~ret10#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:15,408 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:15,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,409 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,411 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2022-07-23 14:17:15,412 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,412 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,418 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:15,418 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:15,433 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 [2022-07-23 14:17:15,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,434 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,435 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2022-07-23 14:17:15,435 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,435 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,441 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:15,441 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post7#1=0} Honda state: {ULTIMATE.start_main_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:15,456 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Ended with exit code 0 [2022-07-23 14:17:15,456 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,457 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,459 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2022-07-23 14:17:15,459 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,459 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,467 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:15,467 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:15,483 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:15,483 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,484 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,485 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2022-07-23 14:17:15,486 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:15,486 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,524 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 [2022-07-23 14:17:15,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,525 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,526 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2022-07-23 14:17:15,527 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:15,527 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:15,563 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:15,584 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:15,584 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:15,584 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:15,584 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:15,584 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:15,584 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:15,584 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,584 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:15,585 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:15,585 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2022-07-23 14:17:15,585 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:15,585 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:15,586 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,588 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,590 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,591 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,646 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,648 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,649 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:15,867 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:15,867 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:15,868 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,868 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,869 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,870 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2022-07-23 14:17:15,871 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:15,876 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:15,876 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:15,876 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:15,876 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:15,876 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:15,876 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:15,876 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:15,877 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:15,892 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:15,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,893 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:15,896 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2022-07-23 14:17:15,897 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:15,902 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:15,902 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:15,902 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:15,902 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:15,902 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:15,903 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:15,903 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:15,926 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:15,940 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Ended with exit code 0 [2022-07-23 14:17:15,941 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,941 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,942 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) [2022-07-23 14:17:15,942 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 [2022-07-23 14:17:15,943 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:15,948 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:15,949 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:15,949 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:15,949 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:15,949 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:15,949 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:15,949 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:15,950 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:15,964 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Ended with exit code 0 [2022-07-23 14:17:15,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:15,965 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:15,966 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) [2022-07-23 14:17:15,966 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 [2022-07-23 14:17:15,968 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:15,973 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:15,973 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:15,973 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:15,973 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:15,973 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:15,975 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:15,975 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:15,997 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:16,002 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2022-07-23 14:17:16,002 INFO L444 ModelExtractionUtils]: 5 out of 10 variables were initially zero. Simplification set additionally 2 variables to zero. [2022-07-23 14:17:16,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:16,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:16,004 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) [2022-07-23 14:17:16,004 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 [2022-07-23 14:17:16,005 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:16,005 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:16,005 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:16,005 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 3 Supporting invariants [] [2022-07-23 14:17:16,020 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 [2022-07-23 14:17:16,021 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:16,033 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:16,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:16,038 INFO L263 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-23 14:17:16,038 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:16,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:16,091 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 27 conjunts are in the unsatisfiable core [2022-07-23 14:17:16,093 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:16,248 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 [2022-07-23 14:17:16,308 INFO L134 CoverageAnalysis]: Checked inductivity of 97 backedges. 1 proven. 51 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-07-23 14:17:16,309 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 9 loop predicates [2022-07-23 14:17:16,309 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 183 states and 308 transitions. cyclomatic complexity: 130 Second operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-07-23 14:17:16,670 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 183 states and 308 transitions. cyclomatic complexity: 130. Second operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Result 1103 states and 1896 transitions. Complement of second has 60 states. [2022-07-23 14:17:16,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 1 stem states 9 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:16,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.6) internal successors, (26), 11 states have internal predecessors, (26), 4 states have call successors, (5), 1 states have call predecessors, (5), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-07-23 14:17:16,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 113 transitions. [2022-07-23 14:17:16,672 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 5 letters. Loop has 47 letters. [2022-07-23 14:17:16,674 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:16,674 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 52 letters. Loop has 47 letters. [2022-07-23 14:17:16,675 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:16,675 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 113 transitions. Stem has 5 letters. Loop has 94 letters. [2022-07-23 14:17:16,677 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:16,677 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1103 states and 1896 transitions. [2022-07-23 14:17:16,690 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 95 [2022-07-23 14:17:16,702 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1103 states to 847 states and 1435 transitions. [2022-07-23 14:17:16,702 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 275 [2022-07-23 14:17:16,702 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 277 [2022-07-23 14:17:16,703 INFO L73 IsDeterministic]: Start isDeterministic. Operand 847 states and 1435 transitions. [2022-07-23 14:17:16,703 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:16,703 INFO L369 hiAutomatonCegarLoop]: Abstraction has 847 states and 1435 transitions. [2022-07-23 14:17:16,703 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 847 states and 1435 transitions. [2022-07-23 14:17:16,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 847 to 737. [2022-07-23 14:17:16,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 737 states, 452 states have (on average 1.1305309734513274) internal successors, (511), 439 states have internal predecessors, (511), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-23 14:17:16,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 737 states to 737 states and 1175 transitions. [2022-07-23 14:17:16,744 INFO L392 hiAutomatonCegarLoop]: Abstraction has 737 states and 1175 transitions. [2022-07-23 14:17:16,744 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:16,745 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-23 14:17:16,745 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-07-23 14:17:16,745 INFO L87 Difference]: Start difference. First operand 737 states and 1175 transitions. Second operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-07-23 14:17:16,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:16,781 INFO L93 Difference]: Finished difference Result 799 states and 1321 transitions. [2022-07-23 14:17:16,782 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-07-23 14:17:16,782 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 799 states and 1321 transitions. [2022-07-23 14:17:16,792 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 93 [2022-07-23 14:17:16,802 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 799 states to 799 states and 1321 transitions. [2022-07-23 14:17:16,802 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 258 [2022-07-23 14:17:16,802 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 258 [2022-07-23 14:17:16,803 INFO L73 IsDeterministic]: Start isDeterministic. Operand 799 states and 1321 transitions. [2022-07-23 14:17:16,803 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:16,803 INFO L369 hiAutomatonCegarLoop]: Abstraction has 799 states and 1321 transitions. [2022-07-23 14:17:16,803 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 799 states and 1321 transitions. [2022-07-23 14:17:16,822 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 799 to 741. [2022-07-23 14:17:16,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 741 states, 456 states have (on average 1.1293859649122806) internal successors, (515), 443 states have internal predecessors, (515), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-23 14:17:16,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 741 states to 741 states and 1179 transitions. [2022-07-23 14:17:16,829 INFO L392 hiAutomatonCegarLoop]: Abstraction has 741 states and 1179 transitions. [2022-07-23 14:17:16,829 INFO L374 stractBuchiCegarLoop]: Abstraction has 741 states and 1179 transitions. [2022-07-23 14:17:16,829 INFO L287 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2022-07-23 14:17:16,829 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 741 states and 1179 transitions. [2022-07-23 14:17:16,833 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 83 [2022-07-23 14:17:16,833 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:16,833 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:16,834 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-23 14:17:16,834 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:16,835 INFO L752 eck$LassoCheckResult]: Stem: 5266#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 5238#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; 5239#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5265#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; 5283#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 5632#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 5370#L43 [2022-07-23 14:17:16,835 INFO L754 eck$LassoCheckResult]: Loop: 5370#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; 5305#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 5312#factENTRY ~n := #in~n; 5375#L25 assume !(~n <= 0); 5324#L26 call #t~ret0 := fact(~n - 1);< 5345#factENTRY ~n := #in~n; 5359#L25 assume ~n <= 0;#res := 1; 5358#factFINAL assume true; 5349#factEXIT >#66#return; 5356#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5374#factFINAL assume true; 5306#factEXIT >#68#return; 5307#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 5312#factENTRY ~n := #in~n; 5375#L25 assume ~n <= 0;#res := 1; 5373#factFINAL assume true; 5381#factEXIT >#70#return; 5309#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 5379#factENTRY ~n := #in~n; 5377#L25 assume !(~n <= 0); 5324#L26 call #t~ret0 := fact(~n - 1);< 5345#factENTRY ~n := #in~n; 5359#L25 assume !(~n <= 0); 5320#L26 call #t~ret0 := fact(~n - 1);< 5345#factENTRY ~n := #in~n; 5359#L25 assume ~n <= 0;#res := 1; 5358#factFINAL assume true; 5349#factEXIT >#66#return; 5348#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5346#factFINAL assume true; 5342#factEXIT >#66#return; 5335#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 5367#factFINAL assume true; 5369#factEXIT >#72#return; 5301#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; 5292#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 5290#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 5288#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 5262#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 5252#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 5253#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 5370#L43 [2022-07-23 14:17:16,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:16,835 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 1 times [2022-07-23 14:17:16,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:16,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021627214] [2022-07-23 14:17:16,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:16,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:16,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:16,840 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:16,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:16,843 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:16,843 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:16,843 INFO L85 PathProgramCache]: Analyzing trace with hash 249527309, now seen corresponding path program 3 times [2022-07-23 14:17:16,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:16,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [316755842] [2022-07-23 14:17:16,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:16,844 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:16,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:16,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1634143239] [2022-07-23 14:17:16,848 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:17:16,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:16,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:16,849 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:16,883 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-07-23 14:17:16,890 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-07-23 14:17:16,890 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:16,890 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 5 conjunts are in the unsatisfiable core [2022-07-23 14:17:16,893 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:16,921 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-07-23 14:17:16,921 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-23 14:17:16,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:16,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [316755842] [2022-07-23 14:17:16,921 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:16,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1634143239] [2022-07-23 14:17:16,921 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1634143239] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-23 14:17:16,921 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-23 14:17:16,921 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-07-23 14:17:16,922 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2092400715] [2022-07-23 14:17:16,922 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-23 14:17:16,922 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:16,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:16,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-07-23 14:17:16,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-07-23 14:17:16,922 INFO L87 Difference]: Start difference. First operand 741 states and 1179 transitions. cyclomatic complexity: 449 Second operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:17,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:17,008 INFO L93 Difference]: Finished difference Result 884 states and 1467 transitions. [2022-07-23 14:17:17,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-23 14:17:17,009 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 884 states and 1467 transitions. [2022-07-23 14:17:17,020 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 125 [2022-07-23 14:17:17,031 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 884 states to 866 states and 1449 transitions. [2022-07-23 14:17:17,031 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 284 [2022-07-23 14:17:17,032 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 284 [2022-07-23 14:17:17,032 INFO L73 IsDeterministic]: Start isDeterministic. Operand 866 states and 1449 transitions. [2022-07-23 14:17:17,035 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:17,035 INFO L369 hiAutomatonCegarLoop]: Abstraction has 866 states and 1449 transitions. [2022-07-23 14:17:17,036 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 866 states and 1449 transitions. [2022-07-23 14:17:17,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 866 to 759. [2022-07-23 14:17:17,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 759 states, 474 states have (on average 1.1244725738396624) internal successors, (533), 461 states have internal predecessors, (533), 194 states have call successors, (194), 92 states have call predecessors, (194), 91 states have return successors, (470), 205 states have call predecessors, (470), 194 states have call successors, (470) [2022-07-23 14:17:17,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 759 states to 759 states and 1197 transitions. [2022-07-23 14:17:17,063 INFO L392 hiAutomatonCegarLoop]: Abstraction has 759 states and 1197 transitions. [2022-07-23 14:17:17,063 INFO L374 stractBuchiCegarLoop]: Abstraction has 759 states and 1197 transitions. [2022-07-23 14:17:17,063 INFO L287 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2022-07-23 14:17:17,063 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 759 states and 1197 transitions. [2022-07-23 14:17:17,067 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 85 [2022-07-23 14:17:17,068 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:17,068 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:17,069 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-23 14:17:17,069 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [13, 13, 7, 7, 7, 7, 6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:17,069 INFO L752 eck$LassoCheckResult]: Stem: 7030#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 7002#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; 7003#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 7029#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; 7050#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 7420#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7147#L43 [2022-07-23 14:17:17,070 INFO L754 eck$LassoCheckResult]: Loop: 7147#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; 7069#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 7136#factENTRY ~n := #in~n; 7145#L25 assume !(~n <= 0); 7080#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume ~n <= 0;#res := 1; 7114#factFINAL assume true; 7106#factEXIT >#66#return; 7107#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7151#factFINAL assume true; 7141#factEXIT >#68#return; 7124#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 7136#factENTRY ~n := #in~n; 7145#L25 assume !(~n <= 0); 7080#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume ~n <= 0;#res := 1; 7114#factFINAL assume true; 7106#factEXIT >#66#return; 7107#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7151#factFINAL assume true; 7141#factEXIT >#70#return; 7127#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 7143#factENTRY ~n := #in~n; 7144#L25 assume ~n <= 0;#res := 1; 7142#factFINAL assume true; 7123#factEXIT >#72#return; 7122#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; 7121#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 7120#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 7118#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7055#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; 7061#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 7068#factENTRY ~n := #in~n; 7149#L25 assume !(~n <= 0); 7087#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume !(~n <= 0); 7079#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume !(~n <= 0); 7079#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume ~n <= 0;#res := 1; 7114#factFINAL assume true; 7106#factEXIT >#66#return; 7105#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7103#factFINAL assume true; 7099#factEXIT >#66#return; 7094#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7098#factFINAL assume true; 7073#factEXIT >#66#return; 7072#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7071#factFINAL assume true; 7070#factEXIT >#74#return; 7062#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 7068#factENTRY ~n := #in~n; 7149#L25 assume !(~n <= 0); 7087#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume ~n <= 0;#res := 1; 7114#factFINAL assume true; 7106#factEXIT >#66#return; 7112#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7132#factFINAL assume true; 7059#factEXIT >#76#return; 7060#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 7117#factENTRY ~n := #in~n; 7116#L25 assume !(~n <= 0); 7087#L26 call #t~ret0 := fact(~n - 1);< 7102#factENTRY ~n := #in~n; 7115#L25 assume ~n <= 0;#res := 1; 7114#factFINAL assume true; 7106#factEXIT >#66#return; 7112#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 7132#factFINAL assume true; 7059#factEXIT >#78#return; 7058#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; 7057#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 7056#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 7054#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 7026#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 7016#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 7017#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 7147#L43 [2022-07-23 14:17:17,070 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:17,070 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 2 times [2022-07-23 14:17:17,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:17,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907972840] [2022-07-23 14:17:17,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:17,071 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:17,074 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:17,074 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:17,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:17,076 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:17,077 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:17,077 INFO L85 PathProgramCache]: Analyzing trace with hash -500195718, now seen corresponding path program 1 times [2022-07-23 14:17:17,077 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:17,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [209505601] [2022-07-23 14:17:17,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:17,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:17,082 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:17,083 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1491713731] [2022-07-23 14:17:17,083 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:17,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:17,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:17,084 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:17,095 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-07-23 14:17:17,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:17,150 INFO L263 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-23 14:17:17,154 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:17,258 INFO L134 CoverageAnalysis]: Checked inductivity of 359 backedges. 216 proven. 57 refuted. 0 times theorem prover too weak. 86 trivial. 0 not checked. [2022-07-23 14:17:17,258 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:17,614 INFO L134 CoverageAnalysis]: Checked inductivity of 359 backedges. 52 proven. 138 refuted. 0 times theorem prover too weak. 169 trivial. 0 not checked. [2022-07-23 14:17:17,614 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:17,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [209505601] [2022-07-23 14:17:17,614 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:17,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1491713731] [2022-07-23 14:17:17,614 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1491713731] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:17,614 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:17,614 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 16] total 19 [2022-07-23 14:17:17,614 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [485299747] [2022-07-23 14:17:17,614 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:17,615 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:17,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:17,615 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-07-23 14:17:17,615 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=286, Unknown=0, NotChecked=0, Total=342 [2022-07-23 14:17:17,615 INFO L87 Difference]: Start difference. First operand 759 states and 1197 transitions. cyclomatic complexity: 449 Second operand has 19 states, 16 states have (on average 3.0625) internal successors, (49), 19 states have internal predecessors, (49), 12 states have call successors, (17), 2 states have call predecessors, (17), 7 states have return successors, (18), 7 states have call predecessors, (18), 12 states have call successors, (18) [2022-07-23 14:17:18,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:18,293 INFO L93 Difference]: Finished difference Result 1101 states and 2033 transitions. [2022-07-23 14:17:18,295 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-07-23 14:17:18,296 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1101 states and 2033 transitions. [2022-07-23 14:17:18,309 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 168 [2022-07-23 14:17:18,323 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1101 states to 1099 states and 2028 transitions. [2022-07-23 14:17:18,324 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 353 [2022-07-23 14:17:18,324 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 353 [2022-07-23 14:17:18,324 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1099 states and 2028 transitions. [2022-07-23 14:17:18,325 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:18,325 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1099 states and 2028 transitions. [2022-07-23 14:17:18,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1099 states and 2028 transitions. [2022-07-23 14:17:18,357 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1099 to 886. [2022-07-23 14:17:18,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 886 states, 560 states have (on average 1.1285714285714286) internal successors, (632), 544 states have internal predecessors, (632), 230 states have call successors, (230), 92 states have call predecessors, (230), 96 states have return successors, (587), 249 states have call predecessors, (587), 230 states have call successors, (587) [2022-07-23 14:17:18,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 886 states to 886 states and 1449 transitions. [2022-07-23 14:17:18,364 INFO L392 hiAutomatonCegarLoop]: Abstraction has 886 states and 1449 transitions. [2022-07-23 14:17:18,364 INFO L374 stractBuchiCegarLoop]: Abstraction has 886 states and 1449 transitions. [2022-07-23 14:17:18,364 INFO L287 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2022-07-23 14:17:18,364 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 886 states and 1449 transitions. [2022-07-23 14:17:18,369 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 119 [2022-07-23 14:17:18,369 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:18,369 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:18,371 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2022-07-23 14:17:18,371 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [22, 22, 13, 13, 13, 13, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:18,371 INFO L752 eck$LassoCheckResult]: Stem: 9450#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 9426#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; 9427#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 9449#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; 9475#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 9919#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9581#L43 [2022-07-23 14:17:18,371 INFO L754 eck$LassoCheckResult]: Loop: 9581#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; 9562#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9580#factENTRY ~n := #in~n; 9589#L25 assume !(~n <= 0); 9518#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9587#factFINAL assume true; 9586#factEXIT >#68#return; 9566#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9580#factENTRY ~n := #in~n; 9589#L25 assume ~n <= 0;#res := 1; 9584#factFINAL assume true; 9560#factEXIT >#70#return; 9570#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9588#factENTRY ~n := #in~n; 9590#L25 assume !(~n <= 0); 9518#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9542#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9587#factFINAL assume true; 9586#factEXIT >#72#return; 9568#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; 9573#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 9535#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9531#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9527#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; 9502#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9580#factENTRY ~n := #in~n; 9589#L25 assume !(~n <= 0); 9518#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9537#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9558#factFINAL assume true; 9546#factEXIT >#66#return; 9526#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9578#factFINAL assume true; 9579#factEXIT >#68#return; 9564#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9580#factENTRY ~n := #in~n; 9589#L25 assume ~n <= 0;#res := 1; 9584#factFINAL assume true; 9560#factEXIT >#70#return; 9569#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9572#factENTRY ~n := #in~n; 9591#L25 assume !(~n <= 0); 9515#L26 call #t~ret0 := fact(~n - 1);< 9433#factENTRY ~n := #in~n; 9552#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9537#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9558#factFINAL assume true; 9546#factEXIT >#66#return; 9526#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9578#factFINAL assume true; 9579#factEXIT >#72#return; 9545#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; 9534#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 9529#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9528#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9481#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; 9488#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 9494#factENTRY ~n := #in~n; 9499#L25 assume !(~n <= 0); 9500#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9537#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9558#factFINAL assume true; 9546#factEXIT >#66#return; 9525#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9530#factFINAL assume true; 9504#factEXIT >#66#return; 9503#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9501#factFINAL assume true; 9498#factEXIT >#74#return; 9486#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 9494#factENTRY ~n := #in~n; 9499#L25 assume !(~n <= 0); 9500#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9537#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9558#factFINAL assume true; 9546#factEXIT >#66#return; 9550#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9495#factFINAL assume true; 9496#factEXIT >#76#return; 9489#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 9491#factENTRY ~n := #in~n; 9575#L25 assume !(~n <= 0); 9500#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume !(~n <= 0); 9513#L26 call #t~ret0 := fact(~n - 1);< 9551#factENTRY ~n := #in~n; 9559#L25 assume ~n <= 0;#res := 1; 9553#factFINAL assume true; 9536#factEXIT >#66#return; 9537#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9558#factFINAL assume true; 9546#factEXIT >#66#return; 9550#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 9495#factFINAL assume true; 9496#factEXIT >#78#return; 9484#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; 9483#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 9482#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 9480#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 9446#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 9438#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 9439#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 9581#L43 [2022-07-23 14:17:18,372 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:18,372 INFO L85 PathProgramCache]: Analyzing trace with hash 1126239088, now seen corresponding path program 3 times [2022-07-23 14:17:18,372 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:18,372 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [973733824] [2022-07-23 14:17:18,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:18,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:18,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:18,376 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:18,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:18,378 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:18,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:18,378 INFO L85 PathProgramCache]: Analyzing trace with hash -1536103717, now seen corresponding path program 2 times [2022-07-23 14:17:18,379 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:18,379 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1043380012] [2022-07-23 14:17:18,379 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:18,379 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:18,384 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:18,387 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1881297705] [2022-07-23 14:17:18,387 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:18,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:18,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:18,392 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:18,395 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2022-07-23 14:17:18,461 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:18,461 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:18,462 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:18,464 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:18,548 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 561 proven. 48 refuted. 0 times theorem prover too weak. 488 trivial. 0 not checked. [2022-07-23 14:17:18,549 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:18,873 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 41 proven. 272 refuted. 0 times theorem prover too weak. 784 trivial. 0 not checked. [2022-07-23 14:17:18,873 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:18,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1043380012] [2022-07-23 14:17:18,874 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:18,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1881297705] [2022-07-23 14:17:18,874 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1881297705] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:18,874 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:18,874 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13] total 16 [2022-07-23 14:17:18,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539109279] [2022-07-23 14:17:18,874 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:18,876 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:18,876 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:18,876 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-07-23 14:17:18,876 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-07-23 14:17:18,877 INFO L87 Difference]: Start difference. First operand 886 states and 1449 transitions. cyclomatic complexity: 574 Second operand has 16 states, 13 states have (on average 3.6923076923076925) internal successors, (48), 16 states have internal predecessors, (48), 11 states have call successors, (22), 2 states have call predecessors, (22), 6 states have return successors, (22), 6 states have call predecessors, (22), 11 states have call successors, (22) [2022-07-23 14:17:19,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:19,246 INFO L93 Difference]: Finished difference Result 906 states and 1472 transitions. [2022-07-23 14:17:19,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-07-23 14:17:19,247 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 906 states and 1472 transitions. [2022-07-23 14:17:19,255 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 116 [2022-07-23 14:17:19,263 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 906 states to 773 states and 1267 transitions. [2022-07-23 14:17:19,263 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 289 [2022-07-23 14:17:19,263 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 289 [2022-07-23 14:17:19,264 INFO L73 IsDeterministic]: Start isDeterministic. Operand 773 states and 1267 transitions. [2022-07-23 14:17:19,264 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:19,264 INFO L369 hiAutomatonCegarLoop]: Abstraction has 773 states and 1267 transitions. [2022-07-23 14:17:19,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 773 states and 1267 transitions. [2022-07-23 14:17:19,286 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 773 to 749. [2022-07-23 14:17:19,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 749 states, 476 states have (on average 1.153361344537815) internal successors, (549), 470 states have internal predecessors, (549), 198 states have call successors, (198), 81 states have call predecessors, (198), 75 states have return successors, (488), 197 states have call predecessors, (488), 198 states have call successors, (488) [2022-07-23 14:17:19,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 749 states to 749 states and 1235 transitions. [2022-07-23 14:17:19,291 INFO L392 hiAutomatonCegarLoop]: Abstraction has 749 states and 1235 transitions. [2022-07-23 14:17:19,291 INFO L374 stractBuchiCegarLoop]: Abstraction has 749 states and 1235 transitions. [2022-07-23 14:17:19,292 INFO L287 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2022-07-23 14:17:19,292 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 749 states and 1235 transitions. [2022-07-23 14:17:19,296 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 116 [2022-07-23 14:17:19,296 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:19,296 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:19,297 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:19,297 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:19,297 INFO L752 eck$LassoCheckResult]: Stem: 12109#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 12082#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; 12083#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 12108#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; 12127#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 12269#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12268#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; 12188#L30 [2022-07-23 14:17:19,297 INFO L754 eck$LassoCheckResult]: Loop: 12188#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 12240#factENTRY ~n := #in~n; 12267#L25 assume !(~n <= 0); 12211#L26 call #t~ret0 := fact(~n - 1);< 12089#factENTRY ~n := #in~n; 12224#L25 assume ~n <= 0;#res := 1; 12220#factFINAL assume true; 12208#factEXIT >#66#return; 12213#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12242#factFINAL assume true; 12237#factEXIT >#68#return; 12189#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 12234#factENTRY ~n := #in~n; 12262#L25 assume ~n <= 0;#res := 1; 12239#factFINAL assume true; 12182#factEXIT >#70#return; 12195#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 12243#factENTRY ~n := #in~n; 12254#L25 assume !(~n <= 0); 12160#L26 call #t~ret0 := fact(~n - 1);< 12203#factENTRY ~n := #in~n; 12223#L25 assume !(~n <= 0); 12167#L26 call #t~ret0 := fact(~n - 1);< 12203#factENTRY ~n := #in~n; 12223#L25 assume ~n <= 0;#res := 1; 12220#factFINAL assume true; 12208#factEXIT >#66#return; 12206#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12204#factFINAL assume true; 12198#factEXIT >#66#return; 12171#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 12238#factFINAL assume true; 12235#factEXIT >#72#return; 12193#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; 12266#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 12264#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 12263#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 12236#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; 12188#L30 [2022-07-23 14:17:19,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:19,300 INFO L85 PathProgramCache]: Analyzing trace with hash 553673399, now seen corresponding path program 1 times [2022-07-23 14:17:19,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:19,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1348309242] [2022-07-23 14:17:19,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:19,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:19,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:19,315 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:19,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:19,321 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:19,321 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:19,321 INFO L85 PathProgramCache]: Analyzing trace with hash -1447349910, now seen corresponding path program 1 times [2022-07-23 14:17:19,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:19,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1882977235] [2022-07-23 14:17:19,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:19,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:19,325 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:19,325 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [854179808] [2022-07-23 14:17:19,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:19,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:19,326 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:19,331 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:19,343 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2022-07-23 14:17:19,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:19,366 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:19,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:19,380 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:19,381 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:19,381 INFO L85 PathProgramCache]: Analyzing trace with hash 1343347616, now seen corresponding path program 1 times [2022-07-23 14:17:19,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:19,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1727012292] [2022-07-23 14:17:19,381 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:19,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:19,386 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:19,387 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [262570607] [2022-07-23 14:17:19,387 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:19,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:19,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:19,392 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:19,393 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2022-07-23 14:17:19,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:19,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 6 conjunts are in the unsatisfiable core [2022-07-23 14:17:19,435 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:19,457 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 40 proven. 1 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-07-23 14:17:19,457 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:19,519 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 4 proven. 17 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2022-07-23 14:17:19,519 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:19,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1727012292] [2022-07-23 14:17:19,519 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:19,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [262570607] [2022-07-23 14:17:19,519 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [262570607] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:19,519 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:19,519 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-07-23 14:17:19,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748877913] [2022-07-23 14:17:19,520 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:19,903 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:19,903 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:19,903 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:19,903 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:19,903 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:19,903 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:19,903 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:19,903 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:19,903 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration9_Loop [2022-07-23 14:17:19,904 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:19,904 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:19,906 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,909 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,911 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,913 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,915 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,916 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,918 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:19,997 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:19,997 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:19,997 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:19,998 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,003 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,012 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,012 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,018 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2022-07-23 14:17:20,019 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,019 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,034 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Ended with exit code 0 [2022-07-23 14:17:20,034 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,034 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,035 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,036 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2022-07-23 14:17:20,037 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,037 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,042 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,042 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret9#1=0} Honda state: {ULTIMATE.start_main_#t~ret9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,057 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:20,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,058 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,059 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,065 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,065 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,071 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2022-07-23 14:17:20,072 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,072 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,086 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 [2022-07-23 14:17:20,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,088 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,088 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2022-07-23 14:17:20,089 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,089 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,094 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,095 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,109 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2022-07-23 14:17:20,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,111 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2022-07-23 14:17:20,113 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,113 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,118 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,119 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,133 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Ended with exit code 0 [2022-07-23 14:17:20,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,135 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,136 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,137 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,140 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2022-07-23 14:17:20,143 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:20,143 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:20,157 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Ended with exit code 0 [2022-07-23 14:17:20,157 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,158 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,159 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2022-07-23 14:17:20,160 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:20,160 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,185 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Ended with exit code 0 [2022-07-23 14:17:20,187 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,187 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,188 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,189 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2022-07-23 14:17:20,190 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:20,190 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:20,501 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:20,505 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:20,505 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:20,506 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:20,506 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:20,506 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:20,506 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:20,506 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,506 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:20,506 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:20,506 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration9_Loop [2022-07-23 14:17:20,506 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:20,506 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:20,507 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,508 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,510 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,512 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,514 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,515 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,516 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:20,595 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:20,595 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:20,595 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,595 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,597 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,597 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2022-07-23 14:17:20,598 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,602 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,603 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,603 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,603 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,603 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,603 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,603 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,604 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,618 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Ended with exit code 0 [2022-07-23 14:17:20,619 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,619 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,620 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,620 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2022-07-23 14:17:20,621 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,626 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,626 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,626 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,626 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,626 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,627 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,627 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,628 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,642 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Ended with exit code 0 [2022-07-23 14:17:20,643 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,643 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,644 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,644 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2022-07-23 14:17:20,646 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,650 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,650 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,650 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,650 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,651 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,651 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,651 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,652 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,666 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Ended with exit code 0 [2022-07-23 14:17:20,666 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,667 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,667 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,668 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2022-07-23 14:17:20,669 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,675 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,675 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,675 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,675 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,675 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,676 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,676 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,686 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,702 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:20,702 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,702 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,703 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,703 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2022-07-23 14:17:20,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 [2022-07-23 14:17:20,709 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,709 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,710 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,710 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,710 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,710 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,710 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,711 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,725 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:20,725 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,725 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,726 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,727 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2022-07-23 14:17:20,728 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,732 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,732 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,733 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,733 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,733 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,733 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,733 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,734 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:20,748 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Ended with exit code 0 [2022-07-23 14:17:20,749 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,749 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,749 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,751 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2022-07-23 14:17:20,752 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:20,756 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:20,757 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:20,757 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:20,757 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:20,757 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:20,759 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:20,759 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:20,761 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:20,767 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2022-07-23 14:17:20,767 INFO L444 ModelExtractionUtils]: 5 out of 9 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-23 14:17:20,767 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:20,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:20,768 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:20,769 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2022-07-23 14:17:20,770 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:20,770 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:20,770 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:20,770 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 [] [2022-07-23 14:17:20,785 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Ended with exit code 0 [2022-07-23 14:17:20,785 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:20,795 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:20,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:20,800 INFO L263 TraceCheckSpWp]: Trace formula consists of 25 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-23 14:17:20,800 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:20,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:20,838 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 16 conjunts are in the unsatisfiable core [2022-07-23 14:17:20,839 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:20,924 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-07-23 14:17:20,924 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 4 loop predicates [2022-07-23 14:17:20,924 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 749 states and 1235 transitions. cyclomatic complexity: 497 Second operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-07-23 14:17:21,014 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 749 states and 1235 transitions. cyclomatic complexity: 497. Second operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Result 1915 states and 2967 transitions. Complement of second has 13 states. [2022-07-23 14:17:21,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:21,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-07-23 14:17:21,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2022-07-23 14:17:21,016 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 38 transitions. Stem has 7 letters. Loop has 38 letters. [2022-07-23 14:17:21,017 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,017 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 38 transitions. Stem has 45 letters. Loop has 38 letters. [2022-07-23 14:17:21,018 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,018 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 38 transitions. Stem has 7 letters. Loop has 76 letters. [2022-07-23 14:17:21,020 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,020 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1915 states and 2967 transitions. [2022-07-23 14:17:21,038 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 119 [2022-07-23 14:17:21,055 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1915 states to 1653 states and 2566 transitions. [2022-07-23 14:17:21,055 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 438 [2022-07-23 14:17:21,056 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 449 [2022-07-23 14:17:21,056 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1653 states and 2566 transitions. [2022-07-23 14:17:21,056 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:21,056 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1653 states and 2566 transitions. [2022-07-23 14:17:21,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1653 states and 2566 transitions. [2022-07-23 14:17:21,113 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1653 to 1549. [2022-07-23 14:17:21,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1549 states, 974 states have (on average 1.162217659137577) internal successors, (1132), 979 states have internal predecessors, (1132), 384 states have call successors, (385), 182 states have call predecessors, (385), 191 states have return successors, (909), 387 states have call predecessors, (909), 378 states have call successors, (909) [2022-07-23 14:17:21,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1549 states to 1549 states and 2426 transitions. [2022-07-23 14:17:21,122 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1549 states and 2426 transitions. [2022-07-23 14:17:21,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:21,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-23 14:17:21,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-07-23 14:17:21,123 INFO L87 Difference]: Start difference. First operand 1549 states and 2426 transitions. Second operand has 7 states, 6 states have (on average 4.666666666666667) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-07-23 14:17:21,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:21,299 INFO L93 Difference]: Finished difference Result 1137 states and 1784 transitions. [2022-07-23 14:17:21,299 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-23 14:17:21,300 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1137 states and 1784 transitions. [2022-07-23 14:17:21,309 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 119 [2022-07-23 14:17:21,323 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1137 states to 1099 states and 1734 transitions. [2022-07-23 14:17:21,323 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:21,324 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 350 [2022-07-23 14:17:21,325 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 350 [2022-07-23 14:17:21,325 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1099 states and 1734 transitions. [2022-07-23 14:17:21,325 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:21,325 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1099 states and 1734 transitions. [2022-07-23 14:17:21,326 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1099 states and 1734 transitions. [2022-07-23 14:17:21,353 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1099 to 1060. [2022-07-23 14:17:21,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1060 states, 667 states have (on average 1.1559220389805098) internal successors, (771), 671 states have internal predecessors, (771), 270 states have call successors, (271), 118 states have call predecessors, (271), 123 states have return successors, (644), 270 states have call predecessors, (644), 265 states have call successors, (644) [2022-07-23 14:17:21,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1060 states to 1060 states and 1686 transitions. [2022-07-23 14:17:21,360 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1060 states and 1686 transitions. [2022-07-23 14:17:21,360 INFO L374 stractBuchiCegarLoop]: Abstraction has 1060 states and 1686 transitions. [2022-07-23 14:17:21,360 INFO L287 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2022-07-23 14:17:21,360 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1060 states and 1686 transitions. [2022-07-23 14:17:21,365 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 119 [2022-07-23 14:17:21,366 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:21,366 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:21,366 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:21,366 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-23 14:17:21,366 INFO L752 eck$LassoCheckResult]: Stem: 17889#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 17863#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; 17864#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 17888#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; 17875#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 17876#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 17890#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; 17891#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 18168#factENTRY ~n := #in~n; 18175#L25 assume ~n <= 0;#res := 1; 18174#factFINAL assume true; 18165#factEXIT >#68#return; 17902#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 17849#factENTRY ~n := #in~n; 18198#L25 assume !(~n <= 0); 17836#L26 call #t~ret0 := fact(~n - 1);< 18307#factENTRY [2022-07-23 14:17:21,366 INFO L754 eck$LassoCheckResult]: Loop: 18307#factENTRY ~n := #in~n; 18323#L25 assume !(~n <= 0); 17838#L26 call #t~ret0 := fact(~n - 1);< 18307#factENTRY [2022-07-23 14:17:21,367 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:21,367 INFO L85 PathProgramCache]: Analyzing trace with hash 960037668, now seen corresponding path program 1 times [2022-07-23 14:17:21,367 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:21,367 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [648634898] [2022-07-23 14:17:21,367 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:21,368 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:21,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:21,405 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-07-23 14:17:21,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:21,408 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:21,408 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:21,408 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [648634898] [2022-07-23 14:17:21,408 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [648634898] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-23 14:17:21,408 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-23 14:17:21,408 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-07-23 14:17:21,408 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1942816929] [2022-07-23 14:17:21,408 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-23 14:17:21,409 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:21,409 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:21,409 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 1 times [2022-07-23 14:17:21,409 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:21,409 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [98003763] [2022-07-23 14:17:21,409 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:21,409 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:21,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:21,411 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:21,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:21,412 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:21,440 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:21,440 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:21,440 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:21,440 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:21,440 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:21,440 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,440 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:21,441 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:21,441 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2022-07-23 14:17:21,441 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:21,441 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:21,442 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,443 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,445 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,450 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,472 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:21,472 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:21,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,474 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,475 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2022-07-23 14:17:21,476 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:21,476 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:21,497 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:21,497 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#t~ret0=0} Honda state: {fact_#t~ret0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:21,518 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:21,518 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,518 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,519 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) [2022-07-23 14:17:21,520 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 [2022-07-23 14:17:21,521 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:21,521 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:21,534 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:21,535 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#res=0} Honda state: {fact_#res=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:21,549 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Ended with exit code 0 [2022-07-23 14:17:21,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,549 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,550 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,551 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2022-07-23 14:17:21,552 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:21,552 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:21,573 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Ended with exit code 0 [2022-07-23 14:17:21,573 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,574 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,575 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2022-07-23 14:17:21,576 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:21,576 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:21,621 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:21,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:21,623 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:21,623 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:21,623 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:21,623 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:21,623 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:21,623 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,624 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:21,624 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:21,624 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2022-07-23 14:17:21,624 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:21,624 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:21,624 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,626 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,628 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,632 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:21,652 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:21,652 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:21,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,654 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,656 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2022-07-23 14:17:21,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 [2022-07-23 14:17:21,662 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:21,662 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:21,662 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:21,662 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:21,662 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:21,662 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:21,662 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:21,663 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:21,678 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Ended with exit code 0 [2022-07-23 14:17:21,678 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,678 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,679 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,679 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2022-07-23 14:17:21,680 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:21,685 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:21,685 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:21,685 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:21,685 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:21,685 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:21,686 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:21,686 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:21,686 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:21,701 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:21,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,702 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,703 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2022-07-23 14:17:21,704 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:21,709 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:21,709 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:21,709 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:21,709 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:21,709 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:21,710 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:21,710 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:21,711 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:21,712 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2022-07-23 14:17:21,712 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-23 14:17:21,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:21,712 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:21,713 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:21,714 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2022-07-23 14:17:21,715 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:21,715 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:21,715 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:21,715 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2022-07-23 14:17:21,729 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2022-07-23 14:17:21,729 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:21,739 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:21,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:21,772 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-23 14:17:21,773 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:21,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:21,838 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:21,839 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:21,859 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:21,860 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-23 14:17:21,860 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1060 states and 1686 transitions. cyclomatic complexity: 645 Second operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-07-23 14:17:21,941 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1060 states and 1686 transitions. cyclomatic complexity: 645. Second operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Result 1232 states and 1950 transitions. Complement of second has 13 states. [2022-07-23 14:17:21,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:21,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-07-23 14:17:21,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 32 transitions. [2022-07-23 14:17:21,942 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 16 letters. Loop has 3 letters. [2022-07-23 14:17:21,942 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,942 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 19 letters. Loop has 3 letters. [2022-07-23 14:17:21,942 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,942 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 16 letters. Loop has 6 letters. [2022-07-23 14:17:21,943 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:21,943 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1232 states and 1950 transitions. [2022-07-23 14:17:21,953 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 119 [2022-07-23 14:17:21,963 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1232 states to 1181 states and 1884 transitions. [2022-07-23 14:17:21,964 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 351 [2022-07-23 14:17:21,964 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 356 [2022-07-23 14:17:21,964 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1181 states and 1884 transitions. [2022-07-23 14:17:21,964 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:21,964 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1181 states and 1884 transitions. [2022-07-23 14:17:21,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1181 states and 1884 transitions. [2022-07-23 14:17:21,992 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1181 to 1175. [2022-07-23 14:17:21,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1175 states, 738 states have (on average 1.1666666666666667) internal successors, (861), 753 states have internal predecessors, (861), 299 states have call successors, (299), 139 states have call predecessors, (299), 138 states have return successors, (709), 282 states have call predecessors, (709), 294 states have call successors, (709) [2022-07-23 14:17:21,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1175 states to 1175 states and 1869 transitions. [2022-07-23 14:17:21,999 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1175 states and 1869 transitions. [2022-07-23 14:17:22,000 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:22,000 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-07-23 14:17:22,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-07-23 14:17:22,000 INFO L87 Difference]: Start difference. First operand 1175 states and 1869 transitions. Second operand has 6 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-07-23 14:17:22,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:22,061 INFO L93 Difference]: Finished difference Result 1271 states and 1980 transitions. [2022-07-23 14:17:22,062 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-23 14:17:22,062 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1271 states and 1980 transitions. [2022-07-23 14:17:22,072 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 118 [2022-07-23 14:17:22,114 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1271 states to 1271 states and 1980 transitions. [2022-07-23 14:17:22,115 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 381 [2022-07-23 14:17:22,115 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 381 [2022-07-23 14:17:22,115 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1271 states and 1980 transitions. [2022-07-23 14:17:22,116 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:22,116 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1271 states and 1980 transitions. [2022-07-23 14:17:22,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1271 states and 1980 transitions. [2022-07-23 14:17:22,141 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1271 to 1215. [2022-07-23 14:17:22,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1215 states, 763 states have (on average 1.161205766710354) internal successors, (886), 782 states have internal predecessors, (886), 303 states have call successors, (303), 146 states have call predecessors, (303), 149 states have return successors, (705), 286 states have call predecessors, (705), 298 states have call successors, (705) [2022-07-23 14:17:22,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1215 states to 1215 states and 1894 transitions. [2022-07-23 14:17:22,148 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1215 states and 1894 transitions. [2022-07-23 14:17:22,148 INFO L374 stractBuchiCegarLoop]: Abstraction has 1215 states and 1894 transitions. [2022-07-23 14:17:22,148 INFO L287 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2022-07-23 14:17:22,148 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1215 states and 1894 transitions. [2022-07-23 14:17:22,154 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 118 [2022-07-23 14:17:22,154 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:22,154 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:22,154 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:22,154 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2022-07-23 14:17:22,154 INFO L752 eck$LassoCheckResult]: Stem: 22741#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 22713#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; 22714#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 22740#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; 22725#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 22726#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 22742#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; 22704#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 22705#factENTRY ~n := #in~n; 23109#L25 assume ~n <= 0;#res := 1; 23108#factFINAL assume true; 23106#factEXIT >#68#return; 23103#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 23104#factENTRY ~n := #in~n; 23107#L25 assume ~n <= 0;#res := 1; 23105#factFINAL assume true; 23102#factEXIT >#70#return; 23075#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 23077#factENTRY ~n := #in~n; 23081#L25 assume !(~n <= 0); 23122#L26 call #t~ret0 := fact(~n - 1);< 23124#factENTRY ~n := #in~n; 23147#L25 assume ~n <= 0;#res := 1; 23141#factFINAL assume true; 23120#factEXIT >#66#return; 23094#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 23117#factFINAL assume true; 23110#factEXIT >#72#return; 23100#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; 23073#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 23062#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 23059#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 23049#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; 23048#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 23196#factENTRY ~n := #in~n; 23193#L25 assume !(~n <= 0); 22677#L26 call #t~ret0 := fact(~n - 1);< 22720#factENTRY [2022-07-23 14:17:22,154 INFO L754 eck$LassoCheckResult]: Loop: 22720#factENTRY ~n := #in~n; 23243#L25 assume !(~n <= 0); 22680#L26 call #t~ret0 := fact(~n - 1);< 22720#factENTRY [2022-07-23 14:17:22,155 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:22,155 INFO L85 PathProgramCache]: Analyzing trace with hash 1580397628, now seen corresponding path program 1 times [2022-07-23 14:17:22,155 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:22,155 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1746352611] [2022-07-23 14:17:22,155 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:22,155 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:22,156 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Ended with exit code 0 [2022-07-23 14:17:22,165 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:22,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [828499897] [2022-07-23 14:17:22,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:22,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:22,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,166 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:22,196 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Waiting until timeout for monitored process [2022-07-23 14:17:22,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:22,211 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-23 14:17:22,212 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:22,263 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 19 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-07-23 14:17:22,264 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:22,330 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 19 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-07-23 14:17:22,330 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:22,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1746352611] [2022-07-23 14:17:22,330 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:22,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [828499897] [2022-07-23 14:17:22,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [828499897] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:22,330 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:22,330 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-07-23 14:17:22,330 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1021417363] [2022-07-23 14:17:22,330 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:22,331 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:22,331 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:22,331 INFO L85 PathProgramCache]: Analyzing trace with hash 29980, now seen corresponding path program 2 times [2022-07-23 14:17:22,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:22,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [550372577] [2022-07-23 14:17:22,331 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:22,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:22,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:22,333 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:22,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:22,334 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:22,360 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:22,360 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:22,360 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:22,360 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:22,360 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:22,360 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,360 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:22,360 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:22,360 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2022-07-23 14:17:22,360 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:22,360 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:22,361 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,363 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,364 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,366 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,387 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:22,387 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:22,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,389 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:22,391 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2022-07-23 14:17:22,393 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:22,393 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:22,411 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:22,411 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#t~ret0=0} Honda state: {fact_#t~ret0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:22,433 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 [2022-07-23 14:17:22,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,434 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:22,439 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:22,440 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:22,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2022-07-23 14:17:22,463 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:22,463 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:22,485 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:22,486 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,486 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,487 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:22,491 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:22,492 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:22,500 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2022-07-23 14:17:22,515 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:22,515 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#res=0} Honda state: {fact_#res=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:22,536 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Ended with exit code 0 [2022-07-23 14:17:22,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,537 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) [2022-07-23 14:17:22,538 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 [2022-07-23 14:17:22,539 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:22,539 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:22,569 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 [2022-07-23 14:17:22,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,571 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) [2022-07-23 14:17:22,571 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 [2022-07-23 14:17:22,573 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:22,573 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:22,631 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:22,634 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2022-07-23 14:17:22,634 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:22,634 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:22,634 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:22,634 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:22,634 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:22,634 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,634 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:22,634 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:22,634 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2022-07-23 14:17:22,634 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:22,634 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:22,635 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,637 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,638 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,643 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:22,664 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:22,664 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:22,664 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,664 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,665 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) [2022-07-23 14:17:22,666 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 [2022-07-23 14:17:22,666 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:22,672 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:22,672 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:22,672 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:22,672 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:22,672 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:22,672 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:22,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:22,673 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:22,687 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:22,688 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,688 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,689 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) [2022-07-23 14:17:22,690 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 [2022-07-23 14:17:22,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 [2022-07-23 14:17:22,696 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:22,696 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:22,696 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:22,696 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:22,696 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:22,697 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:22,697 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:22,698 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:22,712 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 [2022-07-23 14:17:22,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,713 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,713 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) [2022-07-23 14:17:22,714 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 [2022-07-23 14:17:22,715 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:22,720 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:22,720 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:22,720 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:22,720 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:22,720 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:22,720 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:22,721 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:22,722 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:22,724 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-23 14:17:22,724 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-23 14:17:22,724 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:22,724 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:22,725 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) [2022-07-23 14:17:22,726 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 [2022-07-23 14:17:22,727 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:22,727 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:22,727 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:22,727 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2022-07-23 14:17:22,742 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 [2022-07-23 14:17:22,742 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:22,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:22,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:22,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:22,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:22,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:22,940 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:22,940 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:22,958 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:22,958 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-23 14:17:22,958 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,042 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 1259 states and 1947 transitions. Complement of second has 13 states. [2022-07-23 14:17:23,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:23,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 32 transitions. [2022-07-23 14:17:23,043 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-23 14:17:23,045 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:23,045 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:23,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:23,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:23,099 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:23,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:23,270 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 [2022-07-23 14:17:23,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:23,283 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:23,283 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:23,306 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:23,307 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-23 14:17:23,307 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,388 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 1259 states and 1947 transitions. Complement of second has 13 states. [2022-07-23 14:17:23,389 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:23,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 32 transitions. [2022-07-23 14:17:23,390 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 32 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-23 14:17:23,390 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:23,390 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:23,401 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:23,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:23,439 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:23,440 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:23,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:23,582 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:23,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:23,601 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-23 14:17:23,603 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2022-07-23 14:17:23,603 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,707 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1215 states and 1894 transitions. cyclomatic complexity: 703. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 1392 states and 2111 transitions. Complement of second has 16 states. [2022-07-23 14:17:23,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:23,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-07-23 14:17:23,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-07-23 14:17:23,708 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 37 letters. Loop has 3 letters. [2022-07-23 14:17:23,709 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:23,709 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 40 letters. Loop has 3 letters. [2022-07-23 14:17:23,710 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:23,710 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 40 transitions. Stem has 37 letters. Loop has 6 letters. [2022-07-23 14:17:23,711 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:23,711 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1392 states and 2111 transitions. [2022-07-23 14:17:23,722 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 112 [2022-07-23 14:17:23,731 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1392 states to 1032 states and 1633 transitions. [2022-07-23 14:17:23,732 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 288 [2022-07-23 14:17:23,732 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 291 [2022-07-23 14:17:23,732 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1032 states and 1633 transitions. [2022-07-23 14:17:23,732 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:23,732 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1032 states and 1633 transitions. [2022-07-23 14:17:23,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1032 states and 1633 transitions. [2022-07-23 14:17:23,757 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1032 to 989. [2022-07-23 14:17:23,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 989 states, 626 states have (on average 1.156549520766773) internal successors, (724), 629 states have internal predecessors, (724), 246 states have call successors, (246), 117 states have call predecessors, (246), 117 states have return successors, (585), 242 states have call predecessors, (585), 246 states have call successors, (585) [2022-07-23 14:17:23,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 989 states to 989 states and 1555 transitions. [2022-07-23 14:17:23,763 INFO L392 hiAutomatonCegarLoop]: Abstraction has 989 states and 1555 transitions. [2022-07-23 14:17:23,764 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:23,764 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-23 14:17:23,764 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-07-23 14:17:23,764 INFO L87 Difference]: Start difference. First operand 989 states and 1555 transitions. Second operand has 10 states, 8 states have (on average 3.25) internal successors, (26), 10 states have internal predecessors, (26), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-07-23 14:17:23,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:23,986 INFO L93 Difference]: Finished difference Result 1090 states and 1708 transitions. [2022-07-23 14:17:23,986 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-23 14:17:23,987 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1090 states and 1708 transitions. [2022-07-23 14:17:23,995 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 145 [2022-07-23 14:17:24,004 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1090 states to 1055 states and 1651 transitions. [2022-07-23 14:17:24,005 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 318 [2022-07-23 14:17:24,005 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 318 [2022-07-23 14:17:24,005 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1055 states and 1651 transitions. [2022-07-23 14:17:24,005 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:24,006 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1055 states and 1651 transitions. [2022-07-23 14:17:24,006 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states and 1651 transitions. [2022-07-23 14:17:24,059 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1030. [2022-07-23 14:17:24,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1030 states, 650 states have (on average 1.1630769230769231) internal successors, (756), 658 states have internal predecessors, (756), 263 states have call successors, (263), 109 states have call predecessors, (263), 117 states have return successors, (594), 262 states have call predecessors, (594), 263 states have call successors, (594) [2022-07-23 14:17:24,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1030 states to 1030 states and 1613 transitions. [2022-07-23 14:17:24,066 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1030 states and 1613 transitions. [2022-07-23 14:17:24,066 INFO L374 stractBuchiCegarLoop]: Abstraction has 1030 states and 1613 transitions. [2022-07-23 14:17:24,066 INFO L287 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2022-07-23 14:17:24,066 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1030 states and 1613 transitions. [2022-07-23 14:17:24,071 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 135 [2022-07-23 14:17:24,071 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:24,071 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:24,073 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:24,073 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [24, 24, 15, 15, 15, 15, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:24,073 INFO L752 eck$LassoCheckResult]: Stem: 30617#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 30590#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; 30591#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 30616#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; 30604#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 30605#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 31320#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; 31305#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 31306#factENTRY ~n := #in~n; 31311#L25 assume ~n <= 0;#res := 1; 31310#factFINAL assume true; 31304#factEXIT >#68#return; 31300#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 31302#factENTRY ~n := #in~n; 31307#L25 assume ~n <= 0;#res := 1; 31303#factFINAL assume true; 31299#factEXIT >#70#return; 31270#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 31290#factENTRY ~n := #in~n; 31309#L25 assume ~n <= 0;#res := 1; 31292#factFINAL assume true; 31269#factEXIT >#72#return; 31268#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; 31267#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 31262#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 31261#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 31252#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; 31254#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 31319#factENTRY ~n := #in~n; 31328#L25 assume ~n <= 0;#res := 1; 31327#factFINAL assume true; 31318#factEXIT >#74#return; 31111#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 31265#factENTRY ~n := #in~n; 31266#L25 assume ~n <= 0;#res := 1; 31264#factFINAL assume true; 31110#factEXIT >#76#return; 31112#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 31255#factENTRY ~n := #in~n; 31256#L25 assume !(~n <= 0); 31178#L26 call #t~ret0 := fact(~n - 1);< 31179#factENTRY ~n := #in~n; 31191#L25 assume ~n <= 0;#res := 1; 31182#factFINAL assume true; 31183#factEXIT >#66#return; 31155#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 31160#factFINAL assume true; 31348#factEXIT >#78#return; 31347#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; 31399#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 31397#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 30900#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 30614#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 30615#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 30798#L42-3 [2022-07-23 14:17:24,074 INFO L754 eck$LassoCheckResult]: Loop: 30798#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 30797#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; 30778#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 30791#factENTRY ~n := #in~n; 30837#L25 assume !(~n <= 0); 30679#L26 call #t~ret0 := fact(~n - 1);< 30705#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30686#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30832#factFINAL assume true; 30820#factEXIT >#68#return; 30823#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 30831#factENTRY ~n := #in~n; 30835#L25 assume ~n <= 0;#res := 1; 30833#factFINAL assume true; 30830#factEXIT >#70#return; 30821#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 30825#factENTRY ~n := #in~n; 30834#L25 assume !(~n <= 0); 30677#L26 call #t~ret0 := fact(~n - 1);< 30693#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30686#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30832#factFINAL assume true; 30820#factEXIT >#72#return; 30822#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; 30829#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 30828#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 30827#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 30826#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; 30777#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 30791#factENTRY ~n := #in~n; 30837#L25 assume !(~n <= 0); 30679#L26 call #t~ret0 := fact(~n - 1);< 30705#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30686#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30832#factFINAL assume true; 30820#factEXIT >#68#return; 30783#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 30791#factENTRY ~n := #in~n; 30837#L25 assume ~n <= 0;#res := 1; 30793#factFINAL assume true; 30773#factEXIT >#70#return; 30788#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 30825#factENTRY ~n := #in~n; 30834#L25 assume !(~n <= 0); 30677#L26 call #t~ret0 := fact(~n - 1);< 30693#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30686#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30832#factFINAL assume true; 30820#factEXIT >#72#return; 30789#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; 30824#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 30807#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 30806#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 30803#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; 30655#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 30664#factENTRY ~n := #in~n; 30669#L25 assume !(~n <= 0); 30670#L26 call #t~ret0 := fact(~n - 1);< 30705#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30689#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30694#factFINAL assume true; 30674#factEXIT >#66#return; 30673#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30671#factFINAL assume true; 30668#factEXIT >#74#return; 30658#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 30664#factENTRY ~n := #in~n; 30669#L25 assume !(~n <= 0); 30670#L26 call #t~ret0 := fact(~n - 1);< 30705#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30699#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30665#factFINAL assume true; 30666#factEXIT >#76#return; 30656#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 30660#factENTRY ~n := #in~n; 30718#L25 assume !(~n <= 0); 30670#L26 call #t~ret0 := fact(~n - 1);< 30705#factENTRY ~n := #in~n; 30697#L25 assume !(~n <= 0); 30676#L26 call #t~ret0 := fact(~n - 1);< 30696#factENTRY ~n := #in~n; 30702#L25 assume ~n <= 0;#res := 1; 30711#factFINAL assume true; 30709#factEXIT >#66#return; 30706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30703#factFINAL assume true; 30698#factEXIT >#66#return; 30699#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 30665#factFINAL assume true; 30666#factEXIT >#78#return; 30653#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; 30652#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 30651#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 30649#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 30612#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 30613#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 30798#L42-3 [2022-07-23 14:17:24,075 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:24,075 INFO L85 PathProgramCache]: Analyzing trace with hash 1078509977, now seen corresponding path program 1 times [2022-07-23 14:17:24,075 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:24,075 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [20132010] [2022-07-23 14:17:24,076 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:24,076 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:24,085 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:24,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [150685414] [2022-07-23 14:17:24,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:24,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:24,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:24,087 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:24,089 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (83)] Waiting until timeout for monitored process [2022-07-23 14:17:24,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:24,134 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:24,135 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:24,169 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 63 proven. 0 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-07-23 14:17:24,170 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-23 14:17:24,170 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:24,170 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [20132010] [2022-07-23 14:17:24,170 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:24,170 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [150685414] [2022-07-23 14:17:24,170 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [150685414] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-23 14:17:24,170 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-23 14:17:24,170 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-07-23 14:17:24,170 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [760650112] [2022-07-23 14:17:24,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-23 14:17:24,171 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:24,171 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:24,171 INFO L85 PathProgramCache]: Analyzing trace with hash -5917413, now seen corresponding path program 3 times [2022-07-23 14:17:24,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:24,171 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [604928901] [2022-07-23 14:17:24,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:24,171 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:24,177 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:24,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1094964074] [2022-07-23 14:17:24,177 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:17:24,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:24,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:24,179 INFO L229 MonitoredProcess]: Starting monitored process 84 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:24,180 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (84)] Waiting until timeout for monitored process [2022-07-23 14:17:24,242 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-07-23 14:17:24,242 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:24,243 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 11 conjunts are in the unsatisfiable core [2022-07-23 14:17:24,247 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:24,317 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 200 proven. 3 refuted. 0 times theorem prover too weak. 1128 trivial. 0 not checked. [2022-07-23 14:17:24,318 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:24,537 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 200 proven. 4 refuted. 0 times theorem prover too weak. 1127 trivial. 0 not checked. [2022-07-23 14:17:24,538 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:24,538 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [604928901] [2022-07-23 14:17:24,538 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:24,538 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1094964074] [2022-07-23 14:17:24,538 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1094964074] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:24,538 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:24,538 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2022-07-23 14:17:24,538 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [694219308] [2022-07-23 14:17:24,538 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:24,539 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:24,539 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:24,539 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-23 14:17:24,539 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-07-23 14:17:24,539 INFO L87 Difference]: Start difference. First operand 1030 states and 1613 transitions. cyclomatic complexity: 601 Second operand has 7 states, 6 states have (on average 4.833333333333333) internal successors, (29), 7 states have internal predecessors, (29), 3 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-07-23 14:17:24,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:24,668 INFO L93 Difference]: Finished difference Result 983 states and 1466 transitions. [2022-07-23 14:17:24,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-23 14:17:24,669 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 983 states and 1466 transitions. [2022-07-23 14:17:24,675 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 121 [2022-07-23 14:17:24,683 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 983 states to 963 states and 1441 transitions. [2022-07-23 14:17:24,683 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 304 [2022-07-23 14:17:24,684 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 304 [2022-07-23 14:17:24,684 INFO L73 IsDeterministic]: Start isDeterministic. Operand 963 states and 1441 transitions. [2022-07-23 14:17:24,684 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:24,684 INFO L369 hiAutomatonCegarLoop]: Abstraction has 963 states and 1441 transitions. [2022-07-23 14:17:24,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 963 states and 1441 transitions. [2022-07-23 14:17:24,703 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 963 to 935. [2022-07-23 14:17:24,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 935 states, 601 states have (on average 1.1464226289517472) internal successors, (689), 603 states have internal predecessors, (689), 227 states have call successors, (227), 99 states have call predecessors, (227), 107 states have return successors, (486), 232 states have call predecessors, (486), 227 states have call successors, (486) [2022-07-23 14:17:24,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 935 states to 935 states and 1402 transitions. [2022-07-23 14:17:24,708 INFO L392 hiAutomatonCegarLoop]: Abstraction has 935 states and 1402 transitions. [2022-07-23 14:17:24,708 INFO L374 stractBuchiCegarLoop]: Abstraction has 935 states and 1402 transitions. [2022-07-23 14:17:24,708 INFO L287 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2022-07-23 14:17:24,708 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 935 states and 1402 transitions. [2022-07-23 14:17:24,712 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 121 [2022-07-23 14:17:24,712 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:24,712 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:24,713 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:24,713 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [24, 24, 15, 15, 15, 15, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:24,713 INFO L752 eck$LassoCheckResult]: Stem: 33721#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 33690#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; 33691#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 33720#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; 33706#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 33707#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 34326#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; 34322#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 34323#factENTRY ~n := #in~n; 34327#L25 assume ~n <= 0;#res := 1; 34325#factFINAL assume true; 34321#factEXIT >#68#return; 34317#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 34318#factENTRY ~n := #in~n; 34324#L25 assume ~n <= 0;#res := 1; 34320#factFINAL assume true; 34316#factEXIT >#70#return; 34313#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 34314#factENTRY ~n := #in~n; 34319#L25 assume ~n <= 0;#res := 1; 34315#factFINAL assume true; 34312#factEXIT >#72#return; 34310#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; 34309#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 34302#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 34296#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 34293#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; 34204#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 34376#factENTRY ~n := #in~n; 34257#L25 assume !(~n <= 0); 34230#L26 call #t~ret0 := fact(~n - 1);< 34278#factENTRY ~n := #in~n; 34276#L25 assume ~n <= 0;#res := 1; 34277#factFINAL assume true; 34229#factEXIT >#66#return; 34231#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 34267#factFINAL assume true; 34268#factEXIT >#74#return; 34200#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 34382#factENTRY ~n := #in~n; 34218#L25 assume ~n <= 0;#res := 1; 34197#factFINAL assume true; 34202#factEXIT >#76#return; 34221#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 34223#factENTRY ~n := #in~n; 34254#L25 assume !(~n <= 0); 34219#L26 call #t~ret0 := fact(~n - 1);< 34278#factENTRY ~n := #in~n; 34276#L25 assume ~n <= 0;#res := 1; 34277#factFINAL assume true; 34229#factEXIT >#66#return; 34227#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 34220#factFINAL assume true; 34222#factEXIT >#78#return; 33999#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; 33997#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 33995#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 33921#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 33712#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 33713#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 33899#L42-3 [2022-07-23 14:17:24,714 INFO L754 eck$LassoCheckResult]: Loop: 33899#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 33897#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; 33831#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 33872#factENTRY ~n := #in~n; 33913#L25 assume !(~n <= 0); 33779#L26 call #t~ret0 := fact(~n - 1);< 33804#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33787#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33868#factFINAL assume true; 33870#factEXIT >#68#return; 33902#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 33917#factENTRY ~n := #in~n; 33919#L25 assume ~n <= 0;#res := 1; 33918#factFINAL assume true; 33916#factEXIT >#70#return; 33869#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 33843#factENTRY ~n := #in~n; 33911#L25 assume !(~n <= 0); 33786#L26 call #t~ret0 := fact(~n - 1);< 33793#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33787#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33868#factFINAL assume true; 33870#factEXIT >#72#return; 33903#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; 33909#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 33908#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 33907#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 33904#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; 33835#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 33872#factENTRY ~n := #in~n; 33913#L25 assume !(~n <= 0); 33779#L26 call #t~ret0 := fact(~n - 1);< 33804#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33787#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33868#factFINAL assume true; 33870#factEXIT >#68#return; 33829#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 33872#factENTRY ~n := #in~n; 33913#L25 assume ~n <= 0;#res := 1; 33895#factFINAL assume true; 33890#factEXIT >#70#return; 33842#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 33843#factENTRY ~n := #in~n; 33911#L25 assume !(~n <= 0); 33786#L26 call #t~ret0 := fact(~n - 1);< 33793#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33787#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33868#factFINAL assume true; 33870#factEXIT >#72#return; 33825#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; 33822#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 33823#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 33817#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 33818#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; 33758#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 33766#factENTRY ~n := #in~n; 33769#L25 assume !(~n <= 0); 33770#L26 call #t~ret0 := fact(~n - 1);< 33804#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33790#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33794#factFINAL assume true; 33774#factEXIT >#66#return; 33773#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33771#factFINAL assume true; 33768#factEXIT >#74#return; 33759#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 33766#factENTRY ~n := #in~n; 33769#L25 assume !(~n <= 0); 33770#L26 call #t~ret0 := fact(~n - 1);< 33804#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33799#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33813#factFINAL assume true; 33814#factEXIT >#76#return; 33762#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 33763#factENTRY ~n := #in~n; 33812#L25 assume !(~n <= 0); 33770#L26 call #t~ret0 := fact(~n - 1);< 33804#factENTRY ~n := #in~n; 33796#L25 assume !(~n <= 0); 33778#L26 call #t~ret0 := fact(~n - 1);< 33795#factENTRY ~n := #in~n; 33802#L25 assume ~n <= 0;#res := 1; 33809#factFINAL assume true; 33807#factEXIT >#66#return; 33805#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33803#factFINAL assume true; 33797#factEXIT >#66#return; 33799#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 33813#factFINAL assume true; 33814#factEXIT >#78#return; 33756#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; 33755#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 33754#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 33752#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 33710#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 33711#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 33899#L42-3 [2022-07-23 14:17:24,714 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:24,714 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 2 times [2022-07-23 14:17:24,714 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:24,715 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1056835028] [2022-07-23 14:17:24,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:24,715 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:24,720 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:24,720 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1957841154] [2022-07-23 14:17:24,720 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:24,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:24,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:24,724 INFO L229 MonitoredProcess]: Starting monitored process 85 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:24,725 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (85)] Waiting until timeout for monitored process [2022-07-23 14:17:24,776 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:24,776 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:24,776 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:24,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:24,806 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:24,806 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:24,806 INFO L85 PathProgramCache]: Analyzing trace with hash -5917413, now seen corresponding path program 4 times [2022-07-23 14:17:24,806 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:24,806 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [865805807] [2022-07-23 14:17:24,807 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:24,807 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:24,813 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:24,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1121050462] [2022-07-23 14:17:24,813 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:17:24,813 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:24,813 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:24,819 INFO L229 MonitoredProcess]: Starting monitored process 86 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:24,843 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (86)] Waiting until timeout for monitored process [2022-07-23 14:17:24,895 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:17:24,896 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:24,897 INFO L263 TraceCheckSpWp]: Trace formula consists of 341 conjuncts, 20 conjunts are in the unsatisfiable core [2022-07-23 14:17:24,900 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:25,039 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 737 proven. 111 refuted. 0 times theorem prover too weak. 483 trivial. 0 not checked. [2022-07-23 14:17:25,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:25,544 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 57 proven. 424 refuted. 0 times theorem prover too weak. 850 trivial. 0 not checked. [2022-07-23 14:17:25,544 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:25,544 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [865805807] [2022-07-23 14:17:25,544 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:25,544 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1121050462] [2022-07-23 14:17:25,544 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1121050462] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:25,544 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:25,544 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 17] total 21 [2022-07-23 14:17:25,544 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1804243271] [2022-07-23 14:17:25,544 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:25,545 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:25,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:25,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-07-23 14:17:25,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=354, Unknown=0, NotChecked=0, Total=420 [2022-07-23 14:17:25,546 INFO L87 Difference]: Start difference. First operand 935 states and 1402 transitions. cyclomatic complexity: 482 Second operand has 21 states, 16 states have (on average 3.3125) internal successors, (53), 19 states have internal predecessors, (53), 13 states have call successors, (24), 2 states have call predecessors, (24), 7 states have return successors, (25), 10 states have call predecessors, (25), 13 states have call successors, (25) [2022-07-23 14:17:26,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:26,206 INFO L93 Difference]: Finished difference Result 1113 states and 1670 transitions. [2022-07-23 14:17:26,207 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-07-23 14:17:26,207 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1113 states and 1670 transitions. [2022-07-23 14:17:26,214 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 148 [2022-07-23 14:17:26,224 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1113 states to 1113 states and 1670 transitions. [2022-07-23 14:17:26,224 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 351 [2022-07-23 14:17:26,224 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 351 [2022-07-23 14:17:26,224 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1113 states and 1670 transitions. [2022-07-23 14:17:26,225 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:26,225 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1113 states and 1670 transitions. [2022-07-23 14:17:26,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1113 states and 1670 transitions. [2022-07-23 14:17:26,245 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1113 to 912. [2022-07-23 14:17:26,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 912 states, 592 states have (on average 1.1402027027027026) internal successors, (675), 591 states have internal predecessors, (675), 213 states have call successors, (213), 102 states have call predecessors, (213), 107 states have return successors, (459), 218 states have call predecessors, (459), 213 states have call successors, (459) [2022-07-23 14:17:26,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 912 states to 912 states and 1347 transitions. [2022-07-23 14:17:26,252 INFO L392 hiAutomatonCegarLoop]: Abstraction has 912 states and 1347 transitions. [2022-07-23 14:17:26,252 INFO L374 stractBuchiCegarLoop]: Abstraction has 912 states and 1347 transitions. [2022-07-23 14:17:26,253 INFO L287 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2022-07-23 14:17:26,253 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 912 states and 1347 transitions. [2022-07-23 14:17:26,256 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 110 [2022-07-23 14:17:26,256 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:26,256 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:26,260 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:26,260 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [24, 24, 15, 15, 15, 15, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:26,260 INFO L752 eck$LassoCheckResult]: Stem: 36732#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 36705#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; 36706#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 36731#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; 36718#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 36719#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 37379#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; 37373#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 37374#factENTRY ~n := #in~n; 37381#L25 assume ~n <= 0;#res := 1; 37378#factFINAL assume true; 37372#factEXIT >#68#return; 37301#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 37303#factENTRY ~n := #in~n; 37380#L25 assume ~n <= 0;#res := 1; 37375#factFINAL assume true; 37300#factEXIT >#70#return; 37302#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 37343#factENTRY ~n := #in~n; 37350#L25 assume ~n <= 0;#res := 1; 37349#factFINAL assume true; 37342#factEXIT >#72#return; 37341#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; 37340#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 37333#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 37313#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 37214#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; 37205#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 37208#factENTRY ~n := #in~n; 37244#L25 assume !(~n <= 0); 37245#L26 call #t~ret0 := fact(~n - 1);< 37286#factENTRY ~n := #in~n; 37271#L25 assume ~n <= 0;#res := 1; 37272#factFINAL assume true; 37252#factEXIT >#66#return; 37253#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 37277#factFINAL assume true; 37220#factEXIT >#74#return; 37192#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 37203#factENTRY ~n := #in~n; 37273#L25 assume ~n <= 0;#res := 1; 37218#factFINAL assume true; 37219#factEXIT >#76#return; 37188#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 37213#factENTRY ~n := #in~n; 37270#L25 assume !(~n <= 0); 37249#L26 call #t~ret0 := fact(~n - 1);< 37286#factENTRY ~n := #in~n; 37271#L25 assume ~n <= 0;#res := 1; 37272#factFINAL assume true; 37252#factEXIT >#66#return; 37217#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 37212#factFINAL assume true; 37187#factEXIT >#78#return; 37186#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; 37185#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 37184#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 37003#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 36729#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 36730#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 36888#L42-3 [2022-07-23 14:17:26,260 INFO L754 eck$LassoCheckResult]: Loop: 36888#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 36879#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; 36870#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 36877#factENTRY ~n := #in~n; 36918#L25 assume !(~n <= 0); 36797#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36803#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36926#factFINAL assume true; 36904#factEXIT >#68#return; 36906#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 36912#factENTRY ~n := #in~n; 36924#L25 assume ~n <= 0;#res := 1; 36923#factFINAL assume true; 36911#factEXIT >#70#return; 36905#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 36920#factENTRY ~n := #in~n; 36927#L25 assume !(~n <= 0); 36791#L26 call #t~ret0 := fact(~n - 1);< 36805#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36803#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36926#factFINAL assume true; 36904#factEXIT >#72#return; 36907#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; 36916#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 36915#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 36914#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 36910#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; 36783#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 36877#factENTRY ~n := #in~n; 36918#L25 assume !(~n <= 0); 36797#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36803#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36926#factFINAL assume true; 36904#factEXIT >#68#return; 36901#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 36903#factENTRY ~n := #in~n; 36917#L25 assume !(~n <= 0); 36797#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36842#L25 assume ~n <= 0;#res := 1; 36829#factFINAL assume true; 36812#factEXIT >#66#return; 36817#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36908#factFINAL assume true; 36897#factEXIT >#70#return; 36871#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 36877#factENTRY ~n := #in~n; 36918#L25 assume !(~n <= 0); 36797#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36842#L25 assume ~n <= 0;#res := 1; 36829#factFINAL assume true; 36812#factEXIT >#66#return; 36817#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36908#factFINAL assume true; 36897#factEXIT >#72#return; 36874#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; 36895#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 36896#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 36913#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 36782#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; 36766#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 36774#factENTRY ~n := #in~n; 36779#L25 assume !(~n <= 0); 36780#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36799#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36810#factFINAL assume true; 36785#factEXIT >#66#return; 36784#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36781#factFINAL assume true; 36778#factEXIT >#74#return; 36767#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 36774#factENTRY ~n := #in~n; 36779#L25 assume !(~n <= 0); 36780#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36824#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36775#factFINAL assume true; 36776#factEXIT >#76#return; 36769#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 36848#factENTRY ~n := #in~n; 36827#L25 assume !(~n <= 0); 36780#L26 call #t~ret0 := fact(~n - 1);< 36837#factENTRY ~n := #in~n; 36828#L25 assume !(~n <= 0); 36795#L26 call #t~ret0 := fact(~n - 1);< 36811#factENTRY ~n := #in~n; 36840#L25 assume ~n <= 0;#res := 1; 36850#factFINAL assume true; 36849#factEXIT >#66#return; 36847#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36838#factFINAL assume true; 36823#factEXIT >#66#return; 36824#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 36775#factFINAL assume true; 36776#factEXIT >#78#return; 36763#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; 36762#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 36761#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 36759#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 36727#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 36728#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 36888#L42-3 [2022-07-23 14:17:26,261 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:26,261 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 3 times [2022-07-23 14:17:26,261 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:26,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [757698432] [2022-07-23 14:17:26,261 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:26,261 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:26,268 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:26,269 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1993264690] [2022-07-23 14:17:26,269 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:17:26,269 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:26,269 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:26,271 INFO L229 MonitoredProcess]: Starting monitored process 87 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:26,295 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (87)] Waiting until timeout for monitored process [2022-07-23 14:17:26,330 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-07-23 14:17:26,330 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:26,330 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:26,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:26,359 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:26,360 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:26,360 INFO L85 PathProgramCache]: Analyzing trace with hash 732431131, now seen corresponding path program 5 times [2022-07-23 14:17:26,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:26,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [450979872] [2022-07-23 14:17:26,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:26,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:26,369 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:26,369 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [864696344] [2022-07-23 14:17:26,370 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:17:26,370 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:26,370 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:26,375 INFO L229 MonitoredProcess]: Starting monitored process 88 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:26,399 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (88)] Waiting until timeout for monitored process [2022-07-23 14:17:26,471 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2022-07-23 14:17:26,472 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:26,473 INFO L263 TraceCheckSpWp]: Trace formula consists of 335 conjuncts, 20 conjunts are in the unsatisfiable core [2022-07-23 14:17:26,476 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:26,597 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 382 proven. 107 refuted. 0 times theorem prover too weak. 842 trivial. 0 not checked. [2022-07-23 14:17:26,597 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:27,062 INFO L134 CoverageAnalysis]: Checked inductivity of 1331 backedges. 382 proven. 112 refuted. 0 times theorem prover too weak. 837 trivial. 0 not checked. [2022-07-23 14:17:27,062 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:27,063 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [450979872] [2022-07-23 14:17:27,063 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:27,063 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [864696344] [2022-07-23 14:17:27,063 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [864696344] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:27,063 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:27,063 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 21 [2022-07-23 14:17:27,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1925695373] [2022-07-23 14:17:27,063 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:27,064 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:27,064 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:27,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-07-23 14:17:27,065 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=358, Unknown=0, NotChecked=0, Total=420 [2022-07-23 14:17:27,065 INFO L87 Difference]: Start difference. First operand 912 states and 1347 transitions. cyclomatic complexity: 449 Second operand has 21 states, 15 states have (on average 3.2666666666666666) internal successors, (49), 19 states have internal predecessors, (49), 14 states have call successors, (21), 1 states have call predecessors, (21), 5 states have return successors, (21), 13 states have call predecessors, (21), 14 states have call successors, (21) [2022-07-23 14:17:28,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:28,334 INFO L93 Difference]: Finished difference Result 2334 states and 3607 transitions. [2022-07-23 14:17:28,334 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 52 states. [2022-07-23 14:17:28,334 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2334 states and 3607 transitions. [2022-07-23 14:17:28,346 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 526 [2022-07-23 14:17:28,365 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2334 states to 2296 states and 3553 transitions. [2022-07-23 14:17:28,365 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 739 [2022-07-23 14:17:28,366 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 739 [2022-07-23 14:17:28,366 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2296 states and 3553 transitions. [2022-07-23 14:17:28,367 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:28,367 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2296 states and 3553 transitions. [2022-07-23 14:17:28,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2296 states and 3553 transitions. [2022-07-23 14:17:28,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2296 to 1399. [2022-07-23 14:17:28,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1399 states, 877 states have (on average 1.1584948688711516) internal successors, (1016), 878 states have internal predecessors, (1016), 415 states have call successors, (415), 114 states have call predecessors, (415), 107 states have return successors, (837), 406 states have call predecessors, (837), 415 states have call successors, (837) [2022-07-23 14:17:28,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1399 states to 1399 states and 2268 transitions. [2022-07-23 14:17:28,419 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1399 states and 2268 transitions. [2022-07-23 14:17:28,419 INFO L374 stractBuchiCegarLoop]: Abstraction has 1399 states and 2268 transitions. [2022-07-23 14:17:28,419 INFO L287 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2022-07-23 14:17:28,419 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1399 states and 2268 transitions. [2022-07-23 14:17:28,424 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 262 [2022-07-23 14:17:28,424 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:28,424 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:28,425 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:28,425 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [22, 22, 13, 13, 13, 13, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:28,425 INFO L752 eck$LassoCheckResult]: Stem: 41035#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 41005#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; 41006#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 41034#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; 41020#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 41021#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 41847#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; 41804#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 41809#factENTRY ~n := #in~n; 41803#L25 assume ~n <= 0;#res := 1; 41805#factFINAL assume true; 41808#factEXIT >#68#return; 41063#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 41064#factENTRY ~n := #in~n; 42180#L25 assume ~n <= 0;#res := 1; 42177#factFINAL assume true; 42175#factEXIT >#70#return; 40979#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 40980#factENTRY ~n := #in~n; 42222#L25 assume ~n <= 0;#res := 1; 42221#factFINAL assume true; 42219#factEXIT >#72#return; 42220#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; 41029#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 41030#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 42258#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 42257#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; 40946#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 40947#factENTRY ~n := #in~n; 42271#L25 assume !(~n <= 0); 40993#L26 call #t~ret0 := fact(~n - 1);< 42270#factENTRY ~n := #in~n; 42239#L25 assume ~n <= 0;#res := 1; 42299#factFINAL assume true; 42294#factEXIT >#66#return; 42296#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42288#factFINAL assume true; 42289#factEXIT >#74#return; 41044#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 42305#factENTRY ~n := #in~n; 42304#L25 assume ~n <= 0;#res := 1; 42253#factFINAL assume true; 42254#factEXIT >#76#return; 41045#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 42280#factENTRY ~n := #in~n; 42281#L25 assume !(~n <= 0); 40991#L26 call #t~ret0 := fact(~n - 1);< 42270#factENTRY ~n := #in~n; 42239#L25 assume ~n <= 0;#res := 1; 42299#factFINAL assume true; 42294#factEXIT >#66#return; 42295#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 42330#factFINAL assume true; 42329#factEXIT >#78#return; 41009#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; 41010#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 41019#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 41464#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 41462#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 41456#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 41299#L42-3 [2022-07-23 14:17:28,426 INFO L754 eck$LassoCheckResult]: Loop: 41299#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 41213#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; 41190#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 41205#factENTRY ~n := #in~n; 41220#L25 assume !(~n <= 0); 41105#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41126#L25 assume !(~n <= 0); 41114#L26 call #t~ret0 := fact(~n - 1);< 41125#factENTRY ~n := #in~n; 41133#L25 assume ~n <= 0;#res := 1; 41140#factFINAL assume true; 41138#factEXIT >#66#return; 41136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41134#factFINAL assume true; 41129#factEXIT >#66#return; 41121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41211#factFINAL assume true; 41182#factEXIT >#68#return; 41177#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 41180#factENTRY ~n := #in~n; 41206#L25 assume ~n <= 0;#res := 1; 41181#factFINAL assume true; 41176#factEXIT >#70#return; 41174#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 41175#factENTRY ~n := #in~n; 41217#L25 assume !(~n <= 0); 41106#L26 call #t~ret0 := fact(~n - 1);< 41123#factENTRY ~n := #in~n; 41126#L25 assume !(~n <= 0); 41114#L26 call #t~ret0 := fact(~n - 1);< 41125#factENTRY ~n := #in~n; 41133#L25 assume ~n <= 0;#res := 1; 41140#factFINAL assume true; 41138#factEXIT >#66#return; 41136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41134#factFINAL assume true; 41129#factEXIT >#66#return; 41121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41211#factFINAL assume true; 41182#factEXIT >#72#return; 41198#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; 41244#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 41242#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 41240#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 41238#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; 41197#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 41205#factENTRY ~n := #in~n; 41220#L25 assume !(~n <= 0); 41105#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41126#L25 assume !(~n <= 0); 41114#L26 call #t~ret0 := fact(~n - 1);< 41125#factENTRY ~n := #in~n; 41133#L25 assume ~n <= 0;#res := 1; 41140#factFINAL assume true; 41138#factEXIT >#66#return; 41136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41134#factFINAL assume true; 41129#factEXIT >#66#return; 41121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41211#factFINAL assume true; 41182#factEXIT >#68#return; 41188#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 41212#factENTRY ~n := #in~n; 41216#L25 assume !(~n <= 0); 41105#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41161#L25 assume ~n <= 0;#res := 1; 41155#factFINAL assume true; 41141#factEXIT >#66#return; 41148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41214#factFINAL assume true; 41207#factEXIT >#70#return; 41192#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 41205#factENTRY ~n := #in~n; 41220#L25 assume !(~n <= 0); 41105#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41161#L25 assume ~n <= 0;#res := 1; 41155#factFINAL assume true; 41141#factEXIT >#66#return; 41148#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41214#factFINAL assume true; 41207#factEXIT >#72#return; 41203#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; 41226#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 41224#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 41222#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 41223#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; 41081#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 41095#factENTRY ~n := #in~n; 41164#L25 assume !(~n <= 0); 41104#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41126#L25 assume !(~n <= 0); 41114#L26 call #t~ret0 := fact(~n - 1);< 41125#factENTRY ~n := #in~n; 41126#L25 assume !(~n <= 0); 41114#L26 call #t~ret0 := fact(~n - 1);< 41125#factENTRY ~n := #in~n; 41133#L25 assume ~n <= 0;#res := 1; 41140#factFINAL assume true; 41138#factEXIT >#66#return; 41136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41134#factFINAL assume true; 41129#factEXIT >#66#return; 41122#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41124#factFINAL assume true; 41102#factEXIT >#66#return; 41101#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41099#factFINAL assume true; 41098#factEXIT >#74#return; 41079#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 41095#factENTRY ~n := #in~n; 41164#L25 assume !(~n <= 0); 41104#L26 call #t~ret0 := fact(~n - 1);< 41135#factENTRY ~n := #in~n; 41161#L25 assume ~n <= 0;#res := 1; 41155#factFINAL assume true; 41141#factEXIT >#66#return; 41150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41092#factFINAL assume true; 41094#factEXIT >#76#return; 41093#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 41091#factENTRY ~n := #in~n; 41158#L25 assume !(~n <= 0); 41144#L26 call #t~ret0 := fact(~n - 1);< 41014#factENTRY ~n := #in~n; 41161#L25 assume ~n <= 0;#res := 1; 41155#factFINAL assume true; 41141#factEXIT >#66#return; 41150#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 41092#factFINAL assume true; 41094#factEXIT >#78#return; 41090#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; 41255#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 41254#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 41250#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 41031#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 41032#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 41299#L42-3 [2022-07-23 14:17:28,426 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:28,426 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 4 times [2022-07-23 14:17:28,426 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:28,426 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2055175411] [2022-07-23 14:17:28,426 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:28,427 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:28,431 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:28,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [744520348] [2022-07-23 14:17:28,432 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:17:28,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:28,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:28,435 INFO L229 MonitoredProcess]: Starting monitored process 89 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:28,463 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (89)] Waiting until timeout for monitored process [2022-07-23 14:17:28,511 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:17:28,511 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:28,511 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:28,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:28,538 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:28,539 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:28,539 INFO L85 PathProgramCache]: Analyzing trace with hash -897697061, now seen corresponding path program 6 times [2022-07-23 14:17:28,539 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:28,539 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1507246606] [2022-07-23 14:17:28,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:28,539 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:28,545 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:28,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [924569673] [2022-07-23 14:17:28,545 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-23 14:17:28,546 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:28,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:28,548 INFO L229 MonitoredProcess]: Starting monitored process 90 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:28,549 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (90)] Waiting until timeout for monitored process [2022-07-23 14:17:28,629 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2022-07-23 14:17:28,629 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:28,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 281 conjuncts, 12 conjunts are in the unsatisfiable core [2022-07-23 14:17:28,632 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:28,739 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 65 proven. 37 refuted. 0 times theorem prover too weak. 995 trivial. 0 not checked. [2022-07-23 14:17:28,740 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:28,919 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 65 proven. 37 refuted. 0 times theorem prover too weak. 995 trivial. 0 not checked. [2022-07-23 14:17:28,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:28,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1507246606] [2022-07-23 14:17:28,920 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:28,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [924569673] [2022-07-23 14:17:28,920 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [924569673] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:28,920 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:28,920 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 11 [2022-07-23 14:17:28,921 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1778879159] [2022-07-23 14:17:28,921 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:28,921 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:28,921 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:28,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-07-23 14:17:28,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-07-23 14:17:28,922 INFO L87 Difference]: Start difference. First operand 1399 states and 2268 transitions. cyclomatic complexity: 883 Second operand has 12 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 12 states have internal predecessors, (29), 5 states have call successors, (14), 1 states have call predecessors, (14), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-07-23 14:17:29,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:29,167 INFO L93 Difference]: Finished difference Result 1642 states and 2761 transitions. [2022-07-23 14:17:29,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-23 14:17:29,168 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1642 states and 2761 transitions. [2022-07-23 14:17:29,179 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 347 [2022-07-23 14:17:29,194 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1642 states to 1642 states and 2761 transitions. [2022-07-23 14:17:29,194 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 544 [2022-07-23 14:17:29,195 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 544 [2022-07-23 14:17:29,195 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1642 states and 2761 transitions. [2022-07-23 14:17:29,195 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:29,195 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1642 states and 2761 transitions. [2022-07-23 14:17:29,196 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1642 states and 2761 transitions. [2022-07-23 14:17:29,231 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1642 to 1436. [2022-07-23 14:17:29,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1436 states, 917 states have (on average 1.148309705561614) internal successors, (1053), 907 states have internal predecessors, (1053), 412 states have call successors, (412), 114 states have call predecessors, (412), 107 states have return successors, (831), 414 states have call predecessors, (831), 412 states have call successors, (831) [2022-07-23 14:17:29,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1436 states to 1436 states and 2296 transitions. [2022-07-23 14:17:29,240 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1436 states and 2296 transitions. [2022-07-23 14:17:29,240 INFO L374 stractBuchiCegarLoop]: Abstraction has 1436 states and 2296 transitions. [2022-07-23 14:17:29,240 INFO L287 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2022-07-23 14:17:29,240 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1436 states and 2296 transitions. [2022-07-23 14:17:29,244 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 267 [2022-07-23 14:17:29,244 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:29,244 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:29,247 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:29,247 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [21, 21, 12, 12, 12, 12, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:29,248 INFO L752 eck$LassoCheckResult]: Stem: 44948#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 44918#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; 44919#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 44947#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; 44933#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 44934#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 45616#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; 45612#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 45613#factENTRY ~n := #in~n; 45617#L25 assume ~n <= 0;#res := 1; 45615#factFINAL assume true; 45611#factEXIT >#68#return; 45607#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 45608#factENTRY ~n := #in~n; 45614#L25 assume ~n <= 0;#res := 1; 45610#factFINAL assume true; 45606#factEXIT >#70#return; 45603#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 45604#factENTRY ~n := #in~n; 45609#L25 assume ~n <= 0;#res := 1; 45605#factFINAL assume true; 45602#factEXIT >#72#return; 45601#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; 45600#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 45599#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 45598#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 45596#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; 45576#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 45595#factENTRY ~n := #in~n; 45592#L25 assume !(~n <= 0); 45427#L26 call #t~ret0 := fact(~n - 1);< 45486#factENTRY ~n := #in~n; 45452#L25 assume ~n <= 0;#res := 1; 45453#factFINAL assume true; 45425#factEXIT >#66#return; 45429#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45642#factFINAL assume true; 45636#factEXIT >#74#return; 45577#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 45628#factENTRY ~n := #in~n; 45629#L25 assume ~n <= 0;#res := 1; 45632#factFINAL assume true; 45631#factEXIT >#76#return; 45581#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 45630#factENTRY ~n := #in~n; 45586#L25 assume !(~n <= 0); 45426#L26 call #t~ret0 := fact(~n - 1);< 45486#factENTRY ~n := #in~n; 45452#L25 assume ~n <= 0;#res := 1; 45453#factFINAL assume true; 45425#factEXIT >#66#return; 45430#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45638#factFINAL assume true; 45635#factEXIT >#78#return; 45634#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; 45879#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 45876#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 45394#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 45393#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 45391#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 45116#L42-3 [2022-07-23 14:17:29,248 INFO L754 eck$LassoCheckResult]: Loop: 45116#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 45115#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; 45089#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 45111#factENTRY ~n := #in~n; 45140#L25 assume !(~n <= 0); 45007#L26 call #t~ret0 := fact(~n - 1);< 45039#factENTRY ~n := #in~n; 45036#L25 assume !(~n <= 0); 45028#L26 call #t~ret0 := fact(~n - 1);< 45034#factENTRY ~n := #in~n; 45038#L25 assume ~n <= 0;#res := 1; 45056#factFINAL assume true; 45047#factEXIT >#66#return; 45048#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45027#factFINAL assume true; 45033#factEXIT >#66#return; 45050#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45143#factFINAL assume true; 45142#factEXIT >#68#return; 45135#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 45137#factENTRY ~n := #in~n; 45141#L25 assume ~n <= 0;#res := 1; 45138#factFINAL assume true; 45134#factEXIT >#70#return; 45136#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 45144#factENTRY ~n := #in~n; 45145#L25 assume !(~n <= 0); 45032#L26 call #t~ret0 := fact(~n - 1);< 45037#factENTRY ~n := #in~n; 45036#L25 assume !(~n <= 0); 45028#L26 call #t~ret0 := fact(~n - 1);< 45034#factENTRY ~n := #in~n; 45038#L25 assume ~n <= 0;#res := 1; 45056#factFINAL assume true; 45047#factEXIT >#66#return; 45048#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45027#factFINAL assume true; 45033#factEXIT >#66#return; 45050#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45143#factFINAL assume true; 45142#factEXIT >#72#return; 45129#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; 45181#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 45179#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 45174#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 45152#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; 45097#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 45111#factENTRY ~n := #in~n; 45140#L25 assume !(~n <= 0); 45007#L26 call #t~ret0 := fact(~n - 1);< 45039#factENTRY ~n := #in~n; 45036#L25 assume !(~n <= 0); 45028#L26 call #t~ret0 := fact(~n - 1);< 45034#factENTRY ~n := #in~n; 45038#L25 assume ~n <= 0;#res := 1; 45056#factFINAL assume true; 45047#factEXIT >#66#return; 45048#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45027#factFINAL assume true; 45033#factEXIT >#66#return; 45050#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45143#factFINAL assume true; 45142#factEXIT >#68#return; 45123#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 45131#factENTRY ~n := #in~n; 45139#L25 assume !(~n <= 0); 45007#L26 call #t~ret0 := fact(~n - 1);< 45039#factENTRY ~n := #in~n; 45042#L25 assume ~n <= 0;#res := 1; 45043#factFINAL assume true; 45004#factEXIT >#66#return; 45021#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45132#factFINAL assume true; 45119#factEXIT >#70#return; 45096#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 45111#factENTRY ~n := #in~n; 45140#L25 assume ~n <= 0;#res := 1; 45112#factFINAL assume true; 45087#factEXIT >#72#return; 45109#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; 45083#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 45084#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 45079#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 45080#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; 44990#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 45001#factENTRY ~n := #in~n; 45057#L25 assume !(~n <= 0); 45005#L26 call #t~ret0 := fact(~n - 1);< 45039#factENTRY ~n := #in~n; 45036#L25 assume !(~n <= 0); 45028#L26 call #t~ret0 := fact(~n - 1);< 45034#factENTRY ~n := #in~n; 45036#L25 assume !(~n <= 0); 45028#L26 call #t~ret0 := fact(~n - 1);< 45034#factENTRY ~n := #in~n; 45038#L25 assume ~n <= 0;#res := 1; 45056#factFINAL assume true; 45047#factEXIT >#66#return; 45048#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45027#factFINAL assume true; 45033#factEXIT >#66#return; 45044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45045#factFINAL assume true; 45049#factEXIT >#66#return; 45051#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 44998#factFINAL assume true; 45000#factEXIT >#74#return; 44991#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 45001#factENTRY ~n := #in~n; 45057#L25 assume !(~n <= 0); 45005#L26 call #t~ret0 := fact(~n - 1);< 45039#factENTRY ~n := #in~n; 45042#L25 assume ~n <= 0;#res := 1; 45043#factFINAL assume true; 45004#factEXIT >#66#return; 45020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45071#factFINAL assume true; 44980#factEXIT >#76#return; 44992#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 45041#factENTRY ~n := #in~n; 45040#L25 assume !(~n <= 0); 45017#L26 call #t~ret0 := fact(~n - 1);< 44927#factENTRY ~n := #in~n; 45042#L25 assume ~n <= 0;#res := 1; 45043#factFINAL assume true; 45004#factEXIT >#66#return; 45020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 45071#factFINAL assume true; 44980#factEXIT >#78#return; 44995#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; 45163#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 45161#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 44974#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 44943#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 44944#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 45116#L42-3 [2022-07-23 14:17:29,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:29,248 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 5 times [2022-07-23 14:17:29,249 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:29,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1853782769] [2022-07-23 14:17:29,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:29,249 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:29,256 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:29,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2147103361] [2022-07-23 14:17:29,256 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:17:29,256 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:29,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:29,258 INFO L229 MonitoredProcess]: Starting monitored process 91 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:29,279 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (91)] Waiting until timeout for monitored process [2022-07-23 14:17:29,315 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2022-07-23 14:17:29,316 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:29,316 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:29,332 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:29,346 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:29,347 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:29,347 INFO L85 PathProgramCache]: Analyzing trace with hash -1022532461, now seen corresponding path program 7 times [2022-07-23 14:17:29,347 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:29,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1804506787] [2022-07-23 14:17:29,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:29,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:29,354 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:29,355 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1760639636] [2022-07-23 14:17:29,355 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-23 14:17:29,355 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:29,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:29,363 INFO L229 MonitoredProcess]: Starting monitored process 92 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:29,382 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (92)] Waiting until timeout for monitored process [2022-07-23 14:17:29,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:29,439 INFO L263 TraceCheckSpWp]: Trace formula consists of 305 conjuncts, 20 conjunts are in the unsatisfiable core [2022-07-23 14:17:29,441 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:29,571 INFO L134 CoverageAnalysis]: Checked inductivity of 989 backedges. 535 proven. 110 refuted. 0 times theorem prover too weak. 344 trivial. 0 not checked. [2022-07-23 14:17:29,571 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:29,909 INFO L134 CoverageAnalysis]: Checked inductivity of 989 backedges. 49 proven. 227 refuted. 0 times theorem prover too weak. 713 trivial. 0 not checked. [2022-07-23 14:17:29,909 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:29,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1804506787] [2022-07-23 14:17:29,910 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:29,910 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1760639636] [2022-07-23 14:17:29,910 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1760639636] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:29,910 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:29,910 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 20 [2022-07-23 14:17:29,910 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [949090101] [2022-07-23 14:17:29,910 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:29,910 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:29,911 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:29,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-07-23 14:17:29,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=321, Unknown=0, NotChecked=0, Total=380 [2022-07-23 14:17:29,911 INFO L87 Difference]: Start difference. First operand 1436 states and 2296 transitions. cyclomatic complexity: 874 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) [2022-07-23 14:17:30,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:30,699 INFO L93 Difference]: Finished difference Result 1742 states and 2703 transitions. [2022-07-23 14:17:30,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-07-23 14:17:30,699 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1742 states and 2703 transitions. [2022-07-23 14:17:30,708 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 346 [2022-07-23 14:17:30,724 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1742 states to 1678 states and 2612 transitions. [2022-07-23 14:17:30,724 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 552 [2022-07-23 14:17:30,724 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 552 [2022-07-23 14:17:30,725 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1678 states and 2612 transitions. [2022-07-23 14:17:30,725 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:30,725 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1678 states and 2612 transitions. [2022-07-23 14:17:30,726 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1678 states and 2612 transitions. [2022-07-23 14:17:30,755 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1678 to 1484. [2022-07-23 14:17:30,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1484 states, 947 states have (on average 1.143611404435058) internal successors, (1083), 937 states have internal predecessors, (1083), 430 states have call successors, (430), 114 states have call predecessors, (430), 107 states have return successors, (853), 432 states have call predecessors, (853), 430 states have call successors, (853) [2022-07-23 14:17:30,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1484 states to 1484 states and 2366 transitions. [2022-07-23 14:17:30,776 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1484 states and 2366 transitions. [2022-07-23 14:17:30,777 INFO L374 stractBuchiCegarLoop]: Abstraction has 1484 states and 2366 transitions. [2022-07-23 14:17:30,777 INFO L287 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2022-07-23 14:17:30,777 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1484 states and 2366 transitions. [2022-07-23 14:17:30,781 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 283 [2022-07-23 14:17:30,781 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:30,781 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:30,782 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:30,782 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:30,783 INFO L752 eck$LassoCheckResult]: Stem: 49027#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 48995#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; 48996#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 49026#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; 49013#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 49014#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49650#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; 49646#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49647#factENTRY ~n := #in~n; 49651#L25 assume ~n <= 0;#res := 1; 49649#factFINAL assume true; 49645#factEXIT >#68#return; 49641#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49642#factENTRY ~n := #in~n; 49648#L25 assume ~n <= 0;#res := 1; 49644#factFINAL assume true; 49640#factEXIT >#70#return; 49637#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49638#factENTRY ~n := #in~n; 49643#L25 assume ~n <= 0;#res := 1; 49639#factFINAL assume true; 49636#factEXIT >#72#return; 49635#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; 49633#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 49631#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49628#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49626#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; 49509#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49552#factENTRY ~n := #in~n; 49553#L25 assume !(~n <= 0); 49528#L26 call #t~ret0 := fact(~n - 1);< 49531#factENTRY ~n := #in~n; 49554#L25 assume ~n <= 0;#res := 1; 49542#factFINAL assume true; 49532#factEXIT >#66#return; 49535#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49704#factFINAL assume true; 49702#factEXIT >#74#return; 49502#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49506#factENTRY ~n := #in~n; 49703#L25 assume ~n <= 0;#res := 1; 49701#factFINAL assume true; 49700#factEXIT >#76#return; 49496#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49520#factENTRY ~n := #in~n; 49764#L25 assume !(~n <= 0); 49526#L26 call #t~ret0 := fact(~n - 1);< 49531#factENTRY ~n := #in~n; 49554#L25 assume ~n <= 0;#res := 1; 49542#factFINAL assume true; 49532#factEXIT >#66#return; 49534#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49518#factFINAL assume true; 49519#factEXIT >#78#return; 49472#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; 49470#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 49471#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49455#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 49024#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 49025#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 49192#L42-3 [2022-07-23 14:17:30,784 INFO L754 eck$LassoCheckResult]: Loop: 49192#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49191#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; 49170#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49187#factENTRY ~n := #in~n; 49214#L25 assume !(~n <= 0); 49097#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49222#factFINAL assume true; 49216#factEXIT >#68#return; 49221#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49225#factENTRY ~n := #in~n; 49227#L25 assume ~n <= 0;#res := 1; 49226#factFINAL assume true; 49224#factEXIT >#70#return; 49217#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49223#factENTRY ~n := #in~n; 49232#L25 assume !(~n <= 0); 49092#L26 call #t~ret0 := fact(~n - 1);< 49106#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49222#factFINAL assume true; 49216#factEXIT >#72#return; 49220#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; 49231#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 49230#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49229#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49228#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; 49218#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49223#factENTRY ~n := #in~n; 49232#L25 assume !(~n <= 0); 49092#L26 call #t~ret0 := fact(~n - 1);< 49106#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49222#factFINAL assume true; 49216#factEXIT >#68#return; 49203#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49210#factENTRY ~n := #in~n; 49213#L25 assume !(~n <= 0); 49097#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49144#L25 assume ~n <= 0;#res := 1; 49141#factFINAL assume true; 49126#factEXIT >#66#return; 49140#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49211#factFINAL assume true; 49194#factEXIT >#70#return; 49196#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49210#factENTRY ~n := #in~n; 49213#L25 assume !(~n <= 0); 49097#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49144#L25 assume ~n <= 0;#res := 1; 49141#factFINAL assume true; 49126#factEXIT >#66#return; 49140#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49211#factFINAL assume true; 49194#factEXIT >#72#return; 49207#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; 49256#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 49255#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49254#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49236#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; 49166#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49187#factENTRY ~n := #in~n; 49214#L25 assume !(~n <= 0); 49097#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49222#factFINAL assume true; 49216#factEXIT >#68#return; 49199#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49210#factENTRY ~n := #in~n; 49213#L25 assume !(~n <= 0); 49097#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49103#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49222#factFINAL assume true; 49216#factEXIT >#70#return; 49176#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49187#factENTRY ~n := #in~n; 49214#L25 assume ~n <= 0;#res := 1; 49188#factFINAL assume true; 49163#factEXIT >#72#return; 49186#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; 49244#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 49243#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49242#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 49237#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; 49061#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 49079#factENTRY ~n := #in~n; 49149#L25 assume !(~n <= 0); 49088#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49104#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49107#factFINAL assume true; 49086#factEXIT >#66#return; 49085#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49083#factFINAL assume true; 49082#factEXIT >#74#return; 49071#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 49079#factENTRY ~n := #in~n; 49149#L25 assume !(~n <= 0); 49088#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49144#L25 assume ~n <= 0;#res := 1; 49141#factFINAL assume true; 49126#factEXIT >#66#return; 49134#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49077#factFINAL assume true; 49078#factEXIT >#76#return; 49072#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 49084#factENTRY ~n := #in~n; 49125#L25 assume !(~n <= 0); 49088#L26 call #t~ret0 := fact(~n - 1);< 49118#factENTRY ~n := #in~n; 49109#L25 assume !(~n <= 0); 49095#L26 call #t~ret0 := fact(~n - 1);< 49108#factENTRY ~n := #in~n; 49124#L25 assume ~n <= 0;#res := 1; 49123#factFINAL assume true; 49121#factEXIT >#66#return; 49119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49114#factFINAL assume true; 49110#factEXIT >#66#return; 49080#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 49081#factFINAL assume true; 49060#factEXIT >#78#return; 49058#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; 49059#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 49265#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 49050#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 49022#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 49023#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 49192#L42-3 [2022-07-23 14:17:30,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:30,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1978773599, now seen corresponding path program 6 times [2022-07-23 14:17:30,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:30,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [17543195] [2022-07-23 14:17:30,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:30,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:30,796 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:30,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [606522580] [2022-07-23 14:17:30,796 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-23 14:17:30,797 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:30,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:30,798 INFO L229 MonitoredProcess]: Starting monitored process 93 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:30,799 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (93)] Waiting until timeout for monitored process [2022-07-23 14:17:30,852 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-07-23 14:17:30,852 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:30,852 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:30,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:30,875 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:30,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:30,876 INFO L85 PathProgramCache]: Analyzing trace with hash 559999810, now seen corresponding path program 8 times [2022-07-23 14:17:30,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:30,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917679520] [2022-07-23 14:17:30,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:30,878 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:30,886 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:30,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1660862240] [2022-07-23 14:17:30,887 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:30,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:30,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:30,892 INFO L229 MonitoredProcess]: Starting monitored process 94 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:30,912 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (94)] Waiting until timeout for monitored process [2022-07-23 14:17:30,974 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:30,974 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:30,975 INFO L263 TraceCheckSpWp]: Trace formula consists of 428 conjuncts, 14 conjunts are in the unsatisfiable core [2022-07-23 14:17:30,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:31,117 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 572 proven. 207 refuted. 0 times theorem prover too weak. 1304 trivial. 0 not checked. [2022-07-23 14:17:31,117 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:31,495 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 186 proven. 255 refuted. 0 times theorem prover too weak. 1642 trivial. 0 not checked. [2022-07-23 14:17:31,495 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:31,495 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1917679520] [2022-07-23 14:17:31,495 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:31,495 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1660862240] [2022-07-23 14:17:31,495 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1660862240] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:31,495 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:31,495 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13] total 16 [2022-07-23 14:17:31,496 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1592211093] [2022-07-23 14:17:31,496 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:31,496 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:31,496 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:31,496 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-07-23 14:17:31,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=197, Unknown=0, NotChecked=0, Total=240 [2022-07-23 14:17:31,497 INFO L87 Difference]: Start difference. First operand 1484 states and 2366 transitions. cyclomatic complexity: 896 Second operand has 16 states, 13 states have (on average 3.5384615384615383) internal successors, (46), 16 states have internal predecessors, (46), 11 states have call successors, (16), 2 states have call predecessors, (16), 6 states have return successors, (16), 7 states have call predecessors, (16), 11 states have call successors, (16) [2022-07-23 14:17:32,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:32,021 INFO L93 Difference]: Finished difference Result 1948 states and 3091 transitions. [2022-07-23 14:17:32,021 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-07-23 14:17:32,022 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1948 states and 3091 transitions. [2022-07-23 14:17:32,032 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 412 [2022-07-23 14:17:32,062 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1948 states to 1902 states and 2951 transitions. [2022-07-23 14:17:32,062 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 642 [2022-07-23 14:17:32,063 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 642 [2022-07-23 14:17:32,063 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1902 states and 2951 transitions. [2022-07-23 14:17:32,064 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:32,064 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1902 states and 2951 transitions. [2022-07-23 14:17:32,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1902 states and 2951 transitions. [2022-07-23 14:17:32,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1902 to 1721. [2022-07-23 14:17:32,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1721 states, 1089 states have (on average 1.137741046831956) internal successors, (1239), 1095 states have internal predecessors, (1239), 528 states have call successors, (528), 111 states have call predecessors, (528), 104 states have return successors, (937), 514 states have call predecessors, (937), 528 states have call successors, (937) [2022-07-23 14:17:32,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1721 states to 1721 states and 2704 transitions. [2022-07-23 14:17:32,103 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1721 states and 2704 transitions. [2022-07-23 14:17:32,103 INFO L374 stractBuchiCegarLoop]: Abstraction has 1721 states and 2704 transitions. [2022-07-23 14:17:32,103 INFO L287 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2022-07-23 14:17:32,103 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1721 states and 2704 transitions. [2022-07-23 14:17:32,108 INFO L131 ngComponentsAnalysis]: Automaton has 10 accepting balls. 374 [2022-07-23 14:17:32,108 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:32,108 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:32,109 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 11, 9, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:32,110 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:32,110 INFO L752 eck$LassoCheckResult]: Stem: 53602#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 53563#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; 53564#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 53601#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; 53585#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 53586#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 54675#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; 54670#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 54671#factENTRY ~n := #in~n; 54676#L25 assume ~n <= 0;#res := 1; 54674#factFINAL assume true; 54669#factEXIT >#68#return; 54667#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 54668#factENTRY ~n := #in~n; 54673#L25 assume ~n <= 0;#res := 1; 54672#factFINAL assume true; 54666#factEXIT >#70#return; 54642#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 54643#factENTRY ~n := #in~n; 54651#L25 assume ~n <= 0;#res := 1; 54650#factFINAL assume true; 54641#factEXIT >#72#return; 54639#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; 54638#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 54568#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 54555#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 54551#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; 54546#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 54547#factENTRY ~n := #in~n; 54571#L25 assume !(~n <= 0); 54558#L26 call #t~ret0 := fact(~n - 1);< 54563#factENTRY ~n := #in~n; 54573#L25 assume ~n <= 0;#res := 1; 54572#factFINAL assume true; 54564#factEXIT >#66#return; 54566#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 54871#factFINAL assume true; 54869#factEXIT >#74#return; 54536#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 54542#factENTRY ~n := #in~n; 54870#L25 assume ~n <= 0;#res := 1; 54868#factFINAL assume true; 54867#factEXIT >#76#return; 54530#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 54550#factENTRY ~n := #in~n; 54654#L25 assume !(~n <= 0); 54560#L26 call #t~ret0 := fact(~n - 1);< 54563#factENTRY ~n := #in~n; 54573#L25 assume ~n <= 0;#res := 1; 54572#factFINAL assume true; 54564#factEXIT >#66#return; 54554#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 54549#factFINAL assume true; 54527#factEXIT >#78#return; 54526#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; 54511#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 54508#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 54504#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 54471#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 54192#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 53904#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 53839#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; 53757#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 53776#factENTRY ~n := #in~n; 53804#L25 assume ~n <= 0;#res := 1; 53777#factFINAL assume true; 53742#factEXIT >#68#return; 53772#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 54008#factENTRY ~n := #in~n; 54010#L25 assume ~n <= 0;#res := 1; 54009#factFINAL assume true; 54007#factEXIT >#70#return; 53976#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 53995#factENTRY ~n := #in~n; 53993#L25 assume ~n <= 0;#res := 1; 53992#factFINAL assume true; 53974#factEXIT >#72#return; 53986#L30-3 [2022-07-23 14:17:32,110 INFO L754 eck$LassoCheckResult]: Loop: 53986#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; 54140#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 54137#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 54134#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 54131#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; 53984#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 54005#factENTRY ~n := #in~n; 54006#L25 assume !(~n <= 0); 53664#L26 call #t~ret0 := fact(~n - 1);< 53681#factENTRY ~n := #in~n; 53700#L25 assume ~n <= 0;#res := 1; 53684#factFINAL assume true; 53659#factEXIT >#66#return; 53678#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 54013#factFINAL assume true; 54011#factEXIT >#68#return; 53999#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 54002#factENTRY ~n := #in~n; 54004#L25 assume !(~n <= 0); 53668#L26 call #t~ret0 := fact(~n - 1);< 53699#factENTRY ~n := #in~n; 53700#L25 assume ~n <= 0;#res := 1; 53684#factFINAL assume true; 53659#factEXIT >#66#return; 53678#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 54013#factFINAL assume true; 54011#factEXIT >#70#return; 53979#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 53991#factENTRY ~n := #in~n; 53994#L25 assume ~n <= 0;#res := 1; 53992#factFINAL assume true; 53974#factEXIT >#72#return; 53986#L30-3 [2022-07-23 14:17:32,110 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:32,111 INFO L85 PathProgramCache]: Analyzing trace with hash 2096897635, now seen corresponding path program 7 times [2022-07-23 14:17:32,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:32,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [310333252] [2022-07-23 14:17:32,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:32,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:32,118 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:32,118 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [288389439] [2022-07-23 14:17:32,118 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-23 14:17:32,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:32,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:32,120 INFO L229 MonitoredProcess]: Starting monitored process 95 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:32,144 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (95)] Waiting until timeout for monitored process [2022-07-23 14:17:32,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:32,181 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:32,182 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:32,225 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 104 proven. 1 refuted. 0 times theorem prover too weak. 131 trivial. 0 not checked. [2022-07-23 14:17:32,225 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:32,298 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 32 proven. 7 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-07-23 14:17:32,298 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:32,298 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [310333252] [2022-07-23 14:17:32,298 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:32,298 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [288389439] [2022-07-23 14:17:32,298 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [288389439] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:32,298 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:32,298 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2022-07-23 14:17:32,299 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [941637664] [2022-07-23 14:17:32,299 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:32,299 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:32,299 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:32,299 INFO L85 PathProgramCache]: Analyzing trace with hash -447994448, now seen corresponding path program 2 times [2022-07-23 14:17:32,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:32,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1041722392] [2022-07-23 14:17:32,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:32,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:32,301 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:32,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [197411283] [2022-07-23 14:17:32,301 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:32,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:32,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:32,302 INFO L229 MonitoredProcess]: Starting monitored process 96 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:32,329 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (96)] Waiting until timeout for monitored process [2022-07-23 14:17:32,354 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:32,354 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:32,354 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:32,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:32,370 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:33,423 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:33,423 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:33,423 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:33,423 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:33,423 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:33,423 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,423 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:33,423 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:33,423 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration18_Loop [2022-07-23 14:17:33,423 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:33,423 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:33,424 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,427 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,435 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,436 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,440 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,454 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:33,519 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:33,519 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:33,519 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,548 INFO L229 MonitoredProcess]: Starting monitored process 97 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:33,551 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:33,551 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:33,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Waiting until timeout for monitored process [2022-07-23 14:17:33,557 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:33,557 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:33,572 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:33,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,572 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,573 INFO L229 MonitoredProcess]: Starting monitored process 98 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:33,573 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Waiting until timeout for monitored process [2022-07-23 14:17:33,575 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:33,575 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:33,585 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:33,585 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~n~0#1=1, ULTIMATE.start_binomialCoefficient_#in~n#1=1, ULTIMATE.start_binomialCoefficient_~n#1=1, ULTIMATE.start_binomialCoefficient_#t~ret1#1=1} Honda state: {ULTIMATE.start_main_~n~0#1=1, ULTIMATE.start_binomialCoefficient_#in~n#1=1, ULTIMATE.start_binomialCoefficient_~n#1=1, ULTIMATE.start_binomialCoefficient_#t~ret1#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:33,599 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Ended with exit code 0 [2022-07-23 14:17:33,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,600 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,600 INFO L229 MonitoredProcess]: Starting monitored process 99 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:33,601 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (99)] Waiting until timeout for monitored process [2022-07-23 14:17:33,602 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:33,602 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:33,608 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:33,608 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret9#1=0} Honda state: {ULTIMATE.start_main_#t~ret9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:33,622 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (99)] Ended with exit code 0 [2022-07-23 14:17:33,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,624 INFO L229 MonitoredProcess]: Starting monitored process 100 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:33,632 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:33,632 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:33,640 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (100)] Waiting until timeout for monitored process [2022-07-23 14:17:33,647 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:33,648 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:33,662 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (100)] Ended with exit code 0 [2022-07-23 14:17:33,663 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,663 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,664 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) [2022-07-23 14:17:33,664 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 [2022-07-23 14:17:33,665 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:33,666 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:33,686 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 [2022-07-23 14:17:33,687 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:33,687 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:33,687 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) [2022-07-23 14:17:33,688 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 [2022-07-23 14:17:33,689 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:33,689 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:34,372 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:34,375 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:34,376 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:34,376 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:34,376 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:34,376 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:34,376 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:34,376 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,376 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:34,376 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:34,376 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration18_Loop [2022-07-23 14:17:34,376 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:34,376 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:34,377 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,385 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,388 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,390 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,391 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,392 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:34,467 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:34,467 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:34,467 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,468 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) [2022-07-23 14:17:34,469 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 [2022-07-23 14:17:34,470 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:34,475 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,475 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,475 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,475 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,475 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,476 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,476 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,478 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:34,492 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 [2022-07-23 14:17:34,492 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,492 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,493 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) [2022-07-23 14:17:34,494 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 [2022-07-23 14:17:34,495 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:34,500 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,500 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,500 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,500 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,500 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,500 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,500 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,501 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:34,516 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 [2022-07-23 14:17:34,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,517 INFO L229 MonitoredProcess]: Starting monitored process 105 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:34,517 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Waiting until timeout for monitored process [2022-07-23 14:17:34,518 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:34,523 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,523 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,523 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,523 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,523 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,524 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,524 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,525 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:34,539 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 [2022-07-23 14:17:34,539 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,539 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,540 INFO L229 MonitoredProcess]: Starting monitored process 106 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:34,541 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Waiting until timeout for monitored process [2022-07-23 14:17:34,542 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:34,546 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,546 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,546 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,547 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,547 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,547 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,547 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,548 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:34,562 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 [2022-07-23 14:17:34,562 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,562 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,563 INFO L229 MonitoredProcess]: Starting monitored process 107 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:34,564 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Waiting until timeout for monitored process [2022-07-23 14:17:34,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 [2022-07-23 14:17:34,569 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,569 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,570 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,570 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,570 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,570 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,570 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,571 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:17:34,585 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Ended with exit code 0 [2022-07-23 14:17:34,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,586 INFO L229 MonitoredProcess]: Starting monitored process 108 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:34,587 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Waiting until timeout for monitored process [2022-07-23 14:17:34,588 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:34,593 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:34,593 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:34,593 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:34,593 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:34,593 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:34,594 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:34,594 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:34,596 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:34,598 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-23 14:17:34,598 INFO L444 ModelExtractionUtils]: 4 out of 7 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-23 14:17:34,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:34,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:34,601 INFO L229 MonitoredProcess]: Starting monitored process 109 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:34,602 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Waiting until timeout for monitored process [2022-07-23 14:17:34,602 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:34,602 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:34,602 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:34,602 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 1 Supporting invariants [] [2022-07-23 14:17:34,617 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 [2022-07-23 14:17:34,617 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:34,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:34,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:34,687 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-23 14:17:34,689 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:35,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:35,004 INFO L263 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-23 14:17:35,005 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:35,191 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:35,204 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-07-23 14:17:35,205 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-23 14:17:35,205 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003 Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:35,416 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003. Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Result 1993 states and 3058 transitions. Complement of second has 40 states. [2022-07-23 14:17:35,417 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 2 stem states 7 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:35,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:35,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 55 transitions. [2022-07-23 14:17:35,419 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 55 transitions. Stem has 77 letters. Loop has 32 letters. [2022-07-23 14:17:35,419 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:35,419 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:35,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:35,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:35,497 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-23 14:17:35,499 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:35,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:35,798 INFO L263 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-23 14:17:35,799 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:35,964 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-07-23 14:17:35,965 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-23 14:17:35,965 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003 Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:36,207 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003. Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Result 1956 states and 3028 transitions. Complement of second has 36 states. [2022-07-23 14:17:36,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 2 stem states 8 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:36,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:36,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 56 transitions. [2022-07-23 14:17:36,209 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 56 transitions. Stem has 77 letters. Loop has 32 letters. [2022-07-23 14:17:36,209 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:36,209 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:36,219 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:36,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:36,315 INFO L263 TraceCheckSpWp]: Trace formula consists of 501 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-23 14:17:36,317 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:36,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:36,626 INFO L263 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-23 14:17:36,627 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:36,795 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-07-23 14:17:36,796 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 8 loop predicates [2022-07-23 14:17:36,796 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003 Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:37,091 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1721 states and 2704 transitions. cyclomatic complexity: 1003. Second operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Result 4024 states and 5896 transitions. Complement of second has 49 states. [2022-07-23 14:17:37,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 2 stem states 7 non-accepting loop states 1 accepting loop states [2022-07-23 14:17:37,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 4.0) internal successors, (36), 9 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 4 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-07-23 14:17:37,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 93 transitions. [2022-07-23 14:17:37,093 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 93 transitions. Stem has 77 letters. Loop has 32 letters. [2022-07-23 14:17:37,094 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:37,094 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 93 transitions. Stem has 109 letters. Loop has 32 letters. [2022-07-23 14:17:37,094 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:37,095 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 93 transitions. Stem has 77 letters. Loop has 64 letters. [2022-07-23 14:17:37,096 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:37,096 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4024 states and 5896 transitions. [2022-07-23 14:17:37,121 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 147 [2022-07-23 14:17:37,151 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4024 states to 3538 states and 5233 transitions. [2022-07-23 14:17:37,151 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 552 [2022-07-23 14:17:37,152 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 590 [2022-07-23 14:17:37,152 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3538 states and 5233 transitions. [2022-07-23 14:17:37,152 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:37,152 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3538 states and 5233 transitions. [2022-07-23 14:17:37,154 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3538 states and 5233 transitions. [2022-07-23 14:17:37,236 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3538 to 3408. [2022-07-23 14:17:37,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3408 states, 2203 states have (on average 1.0921470721743078) internal successors, (2406), 2200 states have internal predecessors, (2406), 931 states have call successors, (983), 249 states have call predecessors, (983), 274 states have return successors, (1680), 958 states have call predecessors, (1680), 931 states have call successors, (1680) [2022-07-23 14:17:37,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3408 states to 3408 states and 5069 transitions. [2022-07-23 14:17:37,255 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3408 states and 5069 transitions. [2022-07-23 14:17:37,255 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:37,255 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-23 14:17:37,255 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-07-23 14:17:37,255 INFO L87 Difference]: Start difference. First operand 3408 states and 5069 transitions. Second operand has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 4 states have call successors, (12), 2 states have call predecessors, (12), 3 states have return successors, (12), 3 states have call predecessors, (12), 4 states have call successors, (12) [2022-07-23 14:17:37,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:37,421 INFO L93 Difference]: Finished difference Result 2586 states and 3842 transitions. [2022-07-23 14:17:37,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-23 14:17:37,426 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2586 states and 3842 transitions. [2022-07-23 14:17:37,440 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 129 [2022-07-23 14:17:37,459 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2586 states to 1822 states and 2697 transitions. [2022-07-23 14:17:37,460 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 382 [2022-07-23 14:17:37,460 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 391 [2022-07-23 14:17:37,460 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1822 states and 2697 transitions. [2022-07-23 14:17:37,461 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:37,461 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1822 states and 2697 transitions. [2022-07-23 14:17:37,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1822 states and 2697 transitions. [2022-07-23 14:17:37,490 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1822 to 1820. [2022-07-23 14:17:37,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1820 states, 1178 states have (on average 1.0950764006791172) internal successors, (1290), 1176 states have internal predecessors, (1290), 490 states have call successors, (512), 143 states have call predecessors, (512), 152 states have return successors, (893), 500 states have call predecessors, (893), 490 states have call successors, (893) [2022-07-23 14:17:37,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1820 states to 1820 states and 2695 transitions. [2022-07-23 14:17:37,500 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1820 states and 2695 transitions. [2022-07-23 14:17:37,500 INFO L374 stractBuchiCegarLoop]: Abstraction has 1820 states and 2695 transitions. [2022-07-23 14:17:37,500 INFO L287 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2022-07-23 14:17:37,500 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1820 states and 2695 transitions. [2022-07-23 14:17:37,504 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 129 [2022-07-23 14:17:37,504 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:37,505 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:37,506 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 11, 7, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:37,506 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:37,507 INFO L752 eck$LassoCheckResult]: Stem: 70898#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 70870#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; 70871#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 70897#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; 70882#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 70883#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 72171#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; 72168#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 72169#factENTRY ~n := #in~n; 72172#L25 assume ~n <= 0;#res := 1; 72170#factFINAL assume true; 72167#factEXIT >#68#return; 70923#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 70924#factENTRY ~n := #in~n; 72345#L25 assume ~n <= 0;#res := 1; 72343#factFINAL assume true; 72338#factEXIT >#70#return; 70851#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70852#factENTRY ~n := #in~n; 72462#L25 assume ~n <= 0;#res := 1; 72461#factFINAL assume true; 72460#factEXIT >#72#return; 70891#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; 70888#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 70889#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 72565#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 72563#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; 70973#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 70974#factENTRY ~n := #in~n; 70993#L25 assume !(~n <= 0); 70988#L26 call #t~ret0 := fact(~n - 1);< 70989#factENTRY ~n := #in~n; 70994#L25 assume ~n <= 0;#res := 1; 70992#factFINAL assume true; 70987#factEXIT >#66#return; 70986#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70985#factFINAL assume true; 70972#factEXIT >#74#return; 70968#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 70969#factENTRY ~n := #in~n; 70984#L25 assume ~n <= 0;#res := 1; 70971#factFINAL assume true; 70967#factEXIT >#76#return; 70961#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70965#factENTRY ~n := #in~n; 70991#L25 assume !(~n <= 0); 70978#L26 call #t~ret0 := fact(~n - 1);< 70983#factENTRY ~n := #in~n; 72496#L25 assume ~n <= 0;#res := 1; 72495#factFINAL assume true; 72481#factEXIT >#66#return; 70970#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 70966#factFINAL assume true; 70960#factEXIT >#78#return; 70959#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; 70936#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 70937#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 70933#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 70893#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 70894#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 71200#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71199#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; 71113#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71119#factENTRY ~n := #in~n; 71180#L25 assume !(~n <= 0); 71127#L26 call #t~ret0 := fact(~n - 1);< 71190#factENTRY ~n := #in~n; 71133#L25 assume !(~n <= 0); 71128#L26 call #t~ret0 := fact(~n - 1);< 71132#factENTRY ~n := #in~n; 71135#L25 assume ~n <= 0;#res := 1; 71136#factFINAL assume true; 71134#factEXIT >#66#return; 71129#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71131#factFINAL assume true; 71126#factEXIT >#66#return; 71124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71118#factFINAL assume true; 71111#factEXIT >#68#return; 71116#L30-1 [2022-07-23 14:17:37,507 INFO L754 eck$LassoCheckResult]: Loop: 71116#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71123#factENTRY ~n := #in~n; 71130#L25 assume ~n <= 0;#res := 1; 71125#factFINAL assume true; 71120#factEXIT >#70#return; 70877#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 71117#factENTRY ~n := #in~n; 71192#L25 assume !(~n <= 0); 70876#L26 call #t~ret0 := fact(~n - 1);< 70878#factENTRY ~n := #in~n; 71133#L25 assume !(~n <= 0); 71128#L26 call #t~ret0 := fact(~n - 1);< 71132#factENTRY ~n := #in~n; 71135#L25 assume ~n <= 0;#res := 1; 71136#factFINAL assume true; 71134#factEXIT >#66#return; 71129#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71131#factFINAL assume true; 71126#factEXIT >#66#return; 71124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71118#factFINAL assume true; 71111#factEXIT >#72#return; 71109#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; 71108#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 71107#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 71106#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71105#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; 71084#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71083#factENTRY ~n := #in~n; 71085#L25 assume !(~n <= 0); 71042#L26 call #t~ret0 := fact(~n - 1);< 71050#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71067#L25 assume ~n <= 0;#res := 1; 71065#factFINAL assume true; 71063#factEXIT >#66#return; 71062#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71054#factFINAL assume true; 71052#factEXIT >#66#return; 71044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71148#factFINAL assume true; 71137#factEXIT >#68#return; 71142#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71147#factENTRY ~n := #in~n; 71152#L25 assume !(~n <= 0); 71008#L26 call #t~ret0 := fact(~n - 1);< 71051#factENTRY ~n := #in~n; 71028#L25 assume ~n <= 0;#res := 1; 71023#factFINAL assume true; 71007#factEXIT >#66#return; 71017#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71151#factFINAL assume true; 71149#factEXIT >#70#return; 71138#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 71147#factENTRY ~n := #in~n; 71152#L25 assume !(~n <= 0); 71008#L26 call #t~ret0 := fact(~n - 1);< 71051#factENTRY ~n := #in~n; 71028#L25 assume ~n <= 0;#res := 1; 71023#factFINAL assume true; 71007#factEXIT >#66#return; 71017#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71151#factFINAL assume true; 71149#factEXIT >#72#return; 71099#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; 71168#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 71167#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 71166#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71165#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; 71096#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71101#factENTRY ~n := #in~n; 71103#L25 assume !(~n <= 0); 71008#L26 call #t~ret0 := fact(~n - 1);< 71051#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71067#L25 assume ~n <= 0;#res := 1; 71065#factFINAL assume true; 71063#factEXIT >#66#return; 71062#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71054#factFINAL assume true; 71052#factEXIT >#66#return; 71044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71148#factFINAL assume true; 71137#factEXIT >#68#return; 71143#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71147#factENTRY ~n := #in~n; 71152#L25 assume !(~n <= 0); 71008#L26 call #t~ret0 := fact(~n - 1);< 71051#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71067#L25 assume ~n <= 0;#res := 1; 71065#factFINAL assume true; 71063#factEXIT >#66#return; 71062#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71054#factFINAL assume true; 71052#factEXIT >#66#return; 71044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71148#factFINAL assume true; 71137#factEXIT >#70#return; 71089#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 71101#factENTRY ~n := #in~n; 71103#L25 assume ~n <= 0;#res := 1; 71102#factFINAL assume true; 71086#factEXIT >#72#return; 71098#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; 71160#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 71158#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 71156#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71153#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; 70944#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71032#factENTRY ~n := #in~n; 71029#L25 assume !(~n <= 0); 71014#L26 call #t~ret0 := fact(~n - 1);< 71051#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71067#L25 assume ~n <= 0;#res := 1; 71065#factFINAL assume true; 71063#factEXIT >#66#return; 71062#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71054#factFINAL assume true; 71052#factEXIT >#66#return; 71049#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71059#factFINAL assume true; 71039#factEXIT >#66#return; 71035#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71030#factFINAL assume true; 71031#factEXIT >#74#return; 70997#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 71004#factENTRY ~n := #in~n; 71060#L25 assume !(~n <= 0); 71040#L26 call #t~ret0 := fact(~n - 1);< 71050#factENTRY ~n := #in~n; 71068#L25 assume !(~n <= 0); 71043#L26 call #t~ret0 := fact(~n - 1);< 71058#factENTRY ~n := #in~n; 71067#L25 assume ~n <= 0;#res := 1; 71065#factFINAL assume true; 71063#factEXIT >#66#return; 71062#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71054#factFINAL assume true; 71052#factEXIT >#66#return; 71034#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71033#factFINAL assume true; 70995#factEXIT >#76#return; 70945#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 70962#factENTRY ~n := #in~n; 71061#L25 assume !(~n <= 0); 71013#L26 call #t~ret0 := fact(~n - 1);< 71022#factENTRY ~n := #in~n; 71028#L25 assume ~n <= 0;#res := 1; 71023#factFINAL assume true; 71007#factEXIT >#66#return; 71006#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71005#factFINAL assume true; 70940#factEXIT >#78#return; 70938#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; 70939#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 70934#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 70935#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 71070#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 71201#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 71202#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 71825#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; 71115#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 71119#factENTRY ~n := #in~n; 71180#L25 assume !(~n <= 0); 71127#L26 call #t~ret0 := fact(~n - 1);< 71190#factENTRY ~n := #in~n; 71133#L25 assume !(~n <= 0); 71128#L26 call #t~ret0 := fact(~n - 1);< 71132#factENTRY ~n := #in~n; 71135#L25 assume ~n <= 0;#res := 1; 71136#factFINAL assume true; 71134#factEXIT >#66#return; 71129#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71131#factFINAL assume true; 71126#factEXIT >#66#return; 71124#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 71118#factFINAL assume true; 71111#factEXIT >#68#return; 71116#L30-1 [2022-07-23 14:17:37,507 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:37,508 INFO L85 PathProgramCache]: Analyzing trace with hash 2003427327, now seen corresponding path program 8 times [2022-07-23 14:17:37,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:37,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2146897449] [2022-07-23 14:17:37,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:37,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:37,516 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:37,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1711367510] [2022-07-23 14:17:37,516 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:17:37,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:37,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:37,520 INFO L229 MonitoredProcess]: Starting monitored process 110 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:37,547 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (110)] Waiting until timeout for monitored process [2022-07-23 14:17:37,584 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:17:37,584 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:37,585 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-23 14:17:37,586 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:37,642 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 10 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2022-07-23 14:17:37,642 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:37,788 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 11 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2022-07-23 14:17:37,789 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:37,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2146897449] [2022-07-23 14:17:37,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:37,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1711367510] [2022-07-23 14:17:37,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1711367510] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:37,789 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:37,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8] total 9 [2022-07-23 14:17:37,789 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [373825519] [2022-07-23 14:17:37,789 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:37,789 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:37,790 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:37,790 INFO L85 PathProgramCache]: Analyzing trace with hash -1435183796, now seen corresponding path program 9 times [2022-07-23 14:17:37,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:37,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [143641941] [2022-07-23 14:17:37,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:37,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:37,823 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:37,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1877281931] [2022-07-23 14:17:37,823 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:17:37,823 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:37,823 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:37,831 INFO L229 MonitoredProcess]: Starting monitored process 111 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:37,852 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (111)] Waiting until timeout for monitored process [2022-07-23 14:17:37,897 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-07-23 14:17:37,897 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:37,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 17 conjunts are in the unsatisfiable core [2022-07-23 14:17:37,901 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:38,039 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 405 proven. 147 refuted. 0 times theorem prover too weak. 1531 trivial. 0 not checked. [2022-07-23 14:17:38,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:38,508 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 405 proven. 152 refuted. 0 times theorem prover too weak. 1526 trivial. 0 not checked. [2022-07-23 14:17:38,509 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:38,509 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [143641941] [2022-07-23 14:17:38,509 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:38,509 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1877281931] [2022-07-23 14:17:38,509 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1877281931] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:38,509 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:38,509 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 15] total 18 [2022-07-23 14:17:38,509 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1813865719] [2022-07-23 14:17:38,509 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:38,510 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:17:38,510 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:38,510 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-23 14:17:38,510 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-07-23 14:17:38,510 INFO L87 Difference]: Start difference. First operand 1820 states and 2695 transitions. cyclomatic complexity: 899 Second operand has 10 states, 8 states have (on average 4.25) internal successors, (34), 9 states have internal predecessors, (34), 6 states have call successors, (11), 1 states have call predecessors, (11), 3 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-07-23 14:17:38,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:38,779 INFO L93 Difference]: Finished difference Result 2183 states and 3330 transitions. [2022-07-23 14:17:38,779 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-23 14:17:38,780 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2183 states and 3330 transitions. [2022-07-23 14:17:38,793 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 138 [2022-07-23 14:17:38,809 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2183 states to 2183 states and 3330 transitions. [2022-07-23 14:17:38,810 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 478 [2022-07-23 14:17:38,810 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 478 [2022-07-23 14:17:38,810 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2183 states and 3330 transitions. [2022-07-23 14:17:38,811 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:38,811 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2183 states and 3330 transitions. [2022-07-23 14:17:38,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2183 states and 3330 transitions. [2022-07-23 14:17:38,844 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2183 to 1825. [2022-07-23 14:17:38,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1181 states have (on average 1.0948348856900931) internal successors, (1293), 1181 states have internal predecessors, (1293), 492 states have call successors, (514), 143 states have call predecessors, (514), 152 states have return successors, (895), 500 states have call predecessors, (895), 492 states have call successors, (895) [2022-07-23 14:17:38,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2702 transitions. [2022-07-23 14:17:38,854 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1825 states and 2702 transitions. [2022-07-23 14:17:38,854 INFO L374 stractBuchiCegarLoop]: Abstraction has 1825 states and 2702 transitions. [2022-07-23 14:17:38,854 INFO L287 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2022-07-23 14:17:38,854 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1825 states and 2702 transitions. [2022-07-23 14:17:38,859 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 129 [2022-07-23 14:17:38,859 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:38,859 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:38,864 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [23, 23, 14, 9, 9, 9, 9, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:38,864 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [7, 7, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:38,864 INFO L752 eck$LassoCheckResult]: Stem: 76543#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 76512#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; 76513#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 76542#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; 76565#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 76879#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 76877#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; 76870#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76871#factENTRY ~n := #in~n; 76876#L25 assume ~n <= 0;#res := 1; 76875#factFINAL assume true; 76869#factEXIT >#68#return; 76865#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76866#factENTRY ~n := #in~n; 76874#L25 assume ~n <= 0;#res := 1; 76868#factFINAL assume true; 76864#factEXIT >#70#return; 76861#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76862#factENTRY ~n := #in~n; 76884#L25 assume ~n <= 0;#res := 1; 76881#factFINAL assume true; 76860#factEXIT >#72#return; 76858#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; 76859#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 77237#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 77234#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 77230#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; 76608#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76609#factENTRY ~n := #in~n; 76619#L25 assume !(~n <= 0); 76616#L26 call #t~ret0 := fact(~n - 1);< 76617#factENTRY ~n := #in~n; 76620#L25 assume ~n <= 0;#res := 1; 76618#factFINAL assume true; 76615#factEXIT >#66#return; 76614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76611#factFINAL assume true; 76607#factEXIT >#74#return; 76604#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76605#factENTRY ~n := #in~n; 76610#L25 assume ~n <= 0;#res := 1; 76606#factFINAL assume true; 76603#factEXIT >#76#return; 76587#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76600#factENTRY ~n := #in~n; 76707#L25 assume !(~n <= 0); 76700#L26 call #t~ret0 := fact(~n - 1);< 76705#factENTRY ~n := #in~n; 76914#L25 assume ~n <= 0;#res := 1; 76912#factFINAL assume true; 76904#factEXIT >#66#return; 76657#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76631#factFINAL assume true; 76586#factEXIT >#78#return; 76588#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; 76572#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 76573#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 76569#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 76540#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 76531#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 76532#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 77086#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; 76502#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76503#factENTRY ~n := #in~n; 76799#L25 assume !(~n <= 0); 76762#L26 call #t~ret0 := fact(~n - 1);< 76873#factENTRY ~n := #in~n; 76880#L25 assume ~n <= 0;#res := 1; 76878#factFINAL assume true; 76872#factEXIT >#66#return; 76867#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76863#factFINAL assume true; 76839#factEXIT >#68#return; 76756#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76758#factENTRY ~n := #in~n; 76765#L25 assume ~n <= 0;#res := 1; 76760#factFINAL assume true; 76755#factEXIT >#70#return; 76748#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76503#factENTRY ~n := #in~n; 76799#L25 assume !(~n <= 0); 76762#L26 call #t~ret0 := fact(~n - 1);< 76873#factENTRY ~n := #in~n; 76880#L25 assume ~n <= 0;#res := 1; 76878#factFINAL assume true; 76872#factEXIT >#66#return; 76867#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76863#factFINAL assume true; 76839#factEXIT >#72#return; 76840#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; 78214#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 78191#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 78190#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 78189#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; 77363#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 77382#factENTRY ~n := #in~n; 77526#L25 assume !(~n <= 0); 77390#L26 call #t~ret0 := fact(~n - 1);< 77403#factENTRY ~n := #in~n; 77406#L25 assume ~n <= 0;#res := 1; 77404#factFINAL assume true; 77386#factEXIT >#66#return; 77384#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 77381#factFINAL assume true; 77354#factEXIT >#68#return; 77348#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 77351#factENTRY ~n := #in~n; 77385#L25 assume !(~n <= 0); 76636#L26 call #t~ret0 := fact(~n - 1);< 76675#factENTRY ~n := #in~n; 76690#L25 assume !(~n <= 0); 76665#L26 call #t~ret0 := fact(~n - 1);< 76678#factENTRY ~n := #in~n; 76692#L25 assume ~n <= 0;#res := 1; 76693#factFINAL assume true; 76691#factEXIT >#66#return; 76689#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76677#factFINAL assume true; 76663#factEXIT >#66#return; 76668#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 77353#factFINAL assume true; 77345#factEXIT >#70#return; 77338#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 77343#factENTRY ~n := #in~n; 77352#L25 assume ~n <= 0;#res := 1; 77344#factFINAL assume true; 77333#factEXIT >#72#return; 77342#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; 77688#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 77686#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 77685#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 77684#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; 76577#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76658#factENTRY ~n := #in~n; 76676#L25 assume !(~n <= 0); 76640#L26 call #t~ret0 := fact(~n - 1);< 76675#factENTRY ~n := #in~n; 76690#L25 assume !(~n <= 0); 76665#L26 call #t~ret0 := fact(~n - 1);< 76678#factENTRY ~n := #in~n; 76692#L25 assume ~n <= 0;#res := 1; 76693#factFINAL assume true; 76691#factEXIT >#66#return; 76689#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76677#factFINAL assume true; 76663#factEXIT >#66#return; 76662#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76661#factFINAL assume true; 76621#factEXIT >#74#return; 76624#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76487#factENTRY ~n := #in~n; 77327#L25 assume ~n <= 0;#res := 1; 77693#factFINAL assume true; 77692#factEXIT >#76#return; 76680#L30-7 [2022-07-23 14:17:38,865 INFO L754 eck$LassoCheckResult]: Loop: 76680#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 76718#factENTRY ~n := #in~n; 76719#L25 assume !(~n <= 0); 76667#L26 call #t~ret0 := fact(~n - 1);< 76674#factENTRY ~n := #in~n; 76690#L25 assume !(~n <= 0); 76665#L26 call #t~ret0 := fact(~n - 1);< 76678#factENTRY ~n := #in~n; 76692#L25 assume ~n <= 0;#res := 1; 76693#factFINAL assume true; 76691#factEXIT >#66#return; 76689#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76677#factFINAL assume true; 76663#factEXIT >#66#return; 76669#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 77319#factFINAL assume true; 77320#factEXIT >#78#return; 77305#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; 77981#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 77980#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 77979#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 77922#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; 77295#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 76487#factENTRY ~n := #in~n; 77327#L25 assume !(~n <= 0); 76638#L26 call #t~ret0 := fact(~n - 1);< 76675#factENTRY ~n := #in~n; 76690#L25 assume !(~n <= 0); 76665#L26 call #t~ret0 := fact(~n - 1);< 76678#factENTRY ~n := #in~n; 76692#L25 assume ~n <= 0;#res := 1; 76693#factFINAL assume true; 76691#factEXIT >#66#return; 76689#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 76677#factFINAL assume true; 76663#factEXIT >#66#return; 76669#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 77319#factFINAL assume true; 77320#factEXIT >#74#return; 76626#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 76487#factENTRY ~n := #in~n; 77327#L25 assume ~n <= 0;#res := 1; 77693#factFINAL assume true; 77692#factEXIT >#76#return; 76680#L30-7 [2022-07-23 14:17:38,865 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:38,865 INFO L85 PathProgramCache]: Analyzing trace with hash 1803171290, now seen corresponding path program 9 times [2022-07-23 14:17:38,865 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:38,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [980830274] [2022-07-23 14:17:38,866 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:38,866 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:38,872 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:38,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [982575210] [2022-07-23 14:17:38,873 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:17:38,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:38,873 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:38,879 INFO L229 MonitoredProcess]: Starting monitored process 112 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:38,901 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (112)] Waiting until timeout for monitored process [2022-07-23 14:17:38,939 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-07-23 14:17:38,939 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:38,940 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-23 14:17:38,955 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:39,020 INFO L134 CoverageAnalysis]: Checked inductivity of 1133 backedges. 96 proven. 2 refuted. 0 times theorem prover too weak. 1035 trivial. 0 not checked. [2022-07-23 14:17:39,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:39,157 INFO L134 CoverageAnalysis]: Checked inductivity of 1133 backedges. 96 proven. 2 refuted. 0 times theorem prover too weak. 1035 trivial. 0 not checked. [2022-07-23 14:17:39,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:39,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [980830274] [2022-07-23 14:17:39,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:39,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [982575210] [2022-07-23 14:17:39,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [982575210] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:39,158 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:39,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-07-23 14:17:39,158 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1738596404] [2022-07-23 14:17:39,158 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:39,159 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:39,159 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:39,159 INFO L85 PathProgramCache]: Analyzing trace with hash 1519544110, now seen corresponding path program 1 times [2022-07-23 14:17:39,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:39,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [254415062] [2022-07-23 14:17:39,159 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:39,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:39,163 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:39,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [579035910] [2022-07-23 14:17:39,163 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:39,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:39,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:39,175 INFO L229 MonitoredProcess]: Starting monitored process 113 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:39,200 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (113)] Waiting until timeout for monitored process [2022-07-23 14:17:39,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:39,224 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:39,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:39,247 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:17:39,823 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:39,824 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:39,824 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:39,824 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:39,824 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:17:39,824 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:39,824 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:39,824 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:39,824 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration20_Loop [2022-07-23 14:17:39,824 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:39,824 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:39,825 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,827 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,829 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,831 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,832 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,834 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:39,923 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:39,923 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:17:39,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:39,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:39,925 INFO L229 MonitoredProcess]: Starting monitored process 114 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:39,926 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Waiting until timeout for monitored process [2022-07-23 14:17:39,927 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:39,927 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:39,932 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:39,932 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~ret10#1=0} Honda state: {ULTIMATE.start_main_#t~ret10#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:39,947 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Ended with exit code 0 [2022-07-23 14:17:39,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:39,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:39,948 INFO L229 MonitoredProcess]: Starting monitored process 115 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:39,949 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Waiting until timeout for monitored process [2022-07-23 14:17:39,950 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:39,950 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:39,956 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:39,956 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:39,971 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:39,971 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:39,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:39,972 INFO L229 MonitoredProcess]: Starting monitored process 116 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:39,972 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (116)] Waiting until timeout for monitored process [2022-07-23 14:17:39,973 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:39,973 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:39,979 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:39,979 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:39,993 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (116)] Ended with exit code 0 [2022-07-23 14:17:39,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:39,993 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:39,994 INFO L229 MonitoredProcess]: Starting monitored process 117 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:39,995 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (117)] Waiting until timeout for monitored process [2022-07-23 14:17:39,996 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:39,996 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:40,001 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:40,001 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:40,017 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (117)] Ended with exit code 0 [2022-07-23 14:17:40,017 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,017 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:40,018 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) [2022-07-23 14:17:40,019 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 [2022-07-23 14:17:40,020 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:40,020 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:40,026 INFO L437 LassoAnalysis]: Proved nontermination for one component. [2022-07-23 14:17:40,026 INFO L440 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post8#1=0} Honda state: {ULTIMATE.start_main_#t~post8#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2022-07-23 14:17:40,045 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 [2022-07-23 14:17:40,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:40,046 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) [2022-07-23 14:17:40,047 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 [2022-07-23 14:17:40,048 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:17:40,048 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:40,069 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Ended with exit code 0 [2022-07-23 14:17:40,070 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,070 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:40,071 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) [2022-07-23 14:17:40,071 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 [2022-07-23 14:17:40,073 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:17:40,073 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:17:40,084 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:17:40,099 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:40,099 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:17:40,099 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:17:40,099 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:17:40,099 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:17:40,099 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:17:40,099 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,099 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:17:40,099 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:17:40,099 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration20_Loop [2022-07-23 14:17:40,099 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:17:40,099 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:17:40,100 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,122 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,123 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,125 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,128 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,129 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:17:40,199 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:17:40,199 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:17:40,200 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,200 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:40,201 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) [2022-07-23 14:17:40,205 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 [2022-07-23 14:17:40,206 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:17:40,210 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:17:40,211 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:17:40,211 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:17:40,211 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:17:40,211 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:17:40,213 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:17:40,213 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:17:40,216 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:17:40,219 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-23 14:17:40,219 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-23 14:17:40,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:17:40,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:40,220 INFO L229 MonitoredProcess]: Starting monitored process 122 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:17:40,221 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Waiting until timeout for monitored process [2022-07-23 14:17:40,221 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:17:40,221 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:17:40,222 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:17:40,222 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1, ULTIMATE.start_main_~x~0#1) = -1*ULTIMATE.start_main_~k~0#1 + 1*ULTIMATE.start_main_~x~0#1 Supporting invariants [] [2022-07-23 14:17:40,236 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 [2022-07-23 14:17:40,236 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:17:40,244 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:40,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:40,358 INFO L263 TraceCheckSpWp]: Trace formula consists of 1011 conjuncts, 48 conjunts are in the unsatisfiable core [2022-07-23 14:17:40,362 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:40,588 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Forceful destruction successful, exit code 0 [2022-07-23 14:17:41,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:41,003 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-23 14:17:41,004 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:41,112 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-23 14:17:41,113 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 4 loop predicates [2022-07-23 14:17:41,113 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901 Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:41,206 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901. Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Result 2301 states and 3309 transitions. Complement of second has 15 states. [2022-07-23 14:17:41,208 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 [2022-07-23 14:17:41,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:41,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 50 transitions. [2022-07-23 14:17:41,208 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 50 transitions. Stem has 154 letters. Loop has 44 letters. [2022-07-23 14:17:41,209 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:41,209 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:41,218 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:41,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:41,378 INFO L263 TraceCheckSpWp]: Trace formula consists of 1011 conjuncts, 48 conjunts are in the unsatisfiable core [2022-07-23 14:17:41,382 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:42,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:42,065 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-23 14:17:42,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:42,181 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-23 14:17:42,181 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 4 loop predicates [2022-07-23 14:17:42,181 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901 Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:42,281 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901. Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Result 2228 states and 3198 transitions. Complement of second has 17 states. [2022-07-23 14:17:42,282 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 [2022-07-23 14:17:42,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:42,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 48 transitions. [2022-07-23 14:17:42,283 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 48 transitions. Stem has 154 letters. Loop has 44 letters. [2022-07-23 14:17:42,283 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:42,283 INFO L577 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2022-07-23 14:17:42,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:42,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:42,407 INFO L263 TraceCheckSpWp]: Trace formula consists of 1011 conjuncts, 48 conjunts are in the unsatisfiable core [2022-07-23 14:17:42,410 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:43,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:17:43,142 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 18 conjunts are in the unsatisfiable core [2022-07-23 14:17:43,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:43,252 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-07-23 14:17:43,253 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 4 loop predicates [2022-07-23 14:17:43,253 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901 Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:43,374 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1825 states and 2702 transitions. cyclomatic complexity: 901. Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Result 4555 states and 6618 transitions. Complement of second has 20 states. [2022-07-23 14:17:43,375 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 [2022-07-23 14:17:43,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 6 states have internal predecessors, (30), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-07-23 14:17:43,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 66 transitions. [2022-07-23 14:17:43,376 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 66 transitions. Stem has 154 letters. Loop has 44 letters. [2022-07-23 14:17:43,377 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:43,377 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 66 transitions. Stem has 198 letters. Loop has 44 letters. [2022-07-23 14:17:43,378 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:43,378 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 66 transitions. Stem has 154 letters. Loop has 88 letters. [2022-07-23 14:17:43,380 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:17:43,380 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4555 states and 6618 transitions. [2022-07-23 14:17:43,403 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 98 [2022-07-23 14:17:43,415 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4555 states to 2134 states and 3026 transitions. [2022-07-23 14:17:43,415 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 201 [2022-07-23 14:17:43,416 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 225 [2022-07-23 14:17:43,416 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2134 states and 3026 transitions. [2022-07-23 14:17:43,416 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:43,416 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2134 states and 3026 transitions. [2022-07-23 14:17:43,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2134 states and 3026 transitions. [2022-07-23 14:17:43,445 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2134 to 1947. [2022-07-23 14:17:43,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1947 states, 1231 states have (on average 1.0974817221770918) internal successors, (1351), 1260 states have internal predecessors, (1351), 487 states have call successors, (518), 204 states have call predecessors, (518), 229 states have return successors, (886), 482 states have call predecessors, (886), 487 states have call successors, (886) [2022-07-23 14:17:43,454 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1947 states to 1947 states and 2755 transitions. [2022-07-23 14:17:43,454 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1947 states and 2755 transitions. [2022-07-23 14:17:43,455 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:17:43,455 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-23 14:17:43,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-07-23 14:17:43,455 INFO L87 Difference]: Start difference. First operand 1947 states and 2755 transitions. Second operand has 8 states, 6 states have (on average 5.333333333333333) internal successors, (32), 7 states have internal predecessors, (32), 4 states have call successors, (12), 1 states have call predecessors, (12), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-07-23 14:17:43,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:17:43,595 INFO L93 Difference]: Finished difference Result 1895 states and 2645 transitions. [2022-07-23 14:17:43,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-23 14:17:43,596 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1895 states and 2645 transitions. [2022-07-23 14:17:43,605 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 99 [2022-07-23 14:17:43,615 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1895 states to 1846 states and 2584 transitions. [2022-07-23 14:17:43,615 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 203 [2022-07-23 14:17:43,615 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 203 [2022-07-23 14:17:43,616 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1846 states and 2584 transitions. [2022-07-23 14:17:43,616 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:17:43,616 INFO L369 hiAutomatonCegarLoop]: Abstraction has 1846 states and 2584 transitions. [2022-07-23 14:17:43,617 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1846 states and 2584 transitions. [2022-07-23 14:17:43,641 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1846 to 1831. [2022-07-23 14:17:43,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1831 states, 1164 states have (on average 1.0945017182130585) internal successors, (1274), 1191 states have internal predecessors, (1274), 456 states have call successors, (479), 187 states have call predecessors, (479), 211 states have return successors, (808), 452 states have call predecessors, (808), 456 states have call successors, (808) [2022-07-23 14:17:43,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1831 states to 1831 states and 2561 transitions. [2022-07-23 14:17:43,649 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1831 states and 2561 transitions. [2022-07-23 14:17:43,649 INFO L374 stractBuchiCegarLoop]: Abstraction has 1831 states and 2561 transitions. [2022-07-23 14:17:43,649 INFO L287 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2022-07-23 14:17:43,649 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1831 states and 2561 transitions. [2022-07-23 14:17:43,653 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 96 [2022-07-23 14:17:43,653 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:17:43,653 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:17:43,655 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [26, 26, 15, 11, 11, 11, 11, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] [2022-07-23 14:17:43,655 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 18, 18, 18, 18, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:17:43,655 INFO L752 eck$LassoCheckResult]: Stem: 94096#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 94066#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; 94067#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 94095#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; 94080#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 94081#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95260#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; 94054#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94055#factENTRY ~n := #in~n; 95342#L25 assume ~n <= 0;#res := 1; 95340#factFINAL assume true; 95278#factEXIT >#68#return; 94116#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94117#factENTRY ~n := #in~n; 95397#L25 assume ~n <= 0;#res := 1; 95396#factFINAL assume true; 95379#factEXIT >#70#return; 94050#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94051#factENTRY ~n := #in~n; 95481#L25 assume ~n <= 0;#res := 1; 95480#factFINAL assume true; 95479#factEXIT >#72#return; 94089#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; 94086#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 94087#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95630#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95629#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; 95585#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 95586#factENTRY ~n := #in~n; 95597#L25 assume !(~n <= 0); 95593#L26 call #t~ret0 := fact(~n - 1);< 95594#factENTRY ~n := #in~n; 95596#L25 assume ~n <= 0;#res := 1; 95595#factFINAL assume true; 95592#factEXIT >#66#return; 95591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95590#factFINAL assume true; 95584#factEXIT >#74#return; 95578#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 95579#factENTRY ~n := #in~n; 95581#L25 assume ~n <= 0;#res := 1; 95580#factFINAL assume true; 95577#factEXIT >#76#return; 94057#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 95530#factENTRY ~n := #in~n; 95531#L25 assume !(~n <= 0); 95485#L26 call #t~ret0 := fact(~n - 1);< 95513#factENTRY ~n := #in~n; 95509#L25 assume ~n <= 0;#res := 1; 95510#factFINAL assume true; 95484#factEXIT >#66#return; 94102#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94056#factFINAL assume true; 94058#factEXIT >#78#return; 94131#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; 94234#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 94233#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94232#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 94091#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 94092#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 94106#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94107#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; 94629#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94645#factENTRY ~n := #in~n; 94655#L25 assume !(~n <= 0); 94648#L26 call #t~ret0 := fact(~n - 1);< 94681#factENTRY ~n := #in~n; 95206#L25 assume ~n <= 0;#res := 1; 95205#factFINAL assume true; 94680#factEXIT >#66#return; 94679#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94678#factFINAL assume true; 94674#factEXIT >#68#return; 94639#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94640#factENTRY ~n := #in~n; 94643#L25 assume ~n <= 0;#res := 1; 94641#factFINAL assume true; 94637#factEXIT >#70#return; 94631#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94645#factENTRY ~n := #in~n; 94655#L25 assume !(~n <= 0); 94648#L26 call #t~ret0 := fact(~n - 1);< 94681#factENTRY ~n := #in~n; 95206#L25 assume ~n <= 0;#res := 1; 95205#factFINAL assume true; 94680#factEXIT >#66#return; 94679#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94678#factFINAL assume true; 94674#factEXIT >#72#return; 94675#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; 95399#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95138#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95139#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95135#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; 94950#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94956#factENTRY ~n := #in~n; 95243#L25 assume !(~n <= 0); 94999#L26 call #t~ret0 := fact(~n - 1);< 95013#factENTRY ~n := #in~n; 95011#L25 assume ~n <= 0;#res := 1; 95007#factFINAL assume true; 94996#factEXIT >#66#return; 95003#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95116#factFINAL assume true; 94937#factEXIT >#68#return; 94668#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94672#factENTRY ~n := #in~n; 94664#L25 assume !(~n <= 0); 94543#L26 call #t~ret0 := fact(~n - 1);< 94575#factENTRY ~n := #in~n; 94581#L25 assume !(~n <= 0); 94541#L26 call #t~ret0 := fact(~n - 1);< 94580#factENTRY ~n := #in~n; 94589#L25 assume ~n <= 0;#res := 1; 94588#factFINAL assume true; 94585#factEXIT >#66#return; 94584#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94582#factFINAL assume true; 94578#factEXIT >#66#return; 94549#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94975#factFINAL assume true; 94973#factEXIT >#70#return; 94924#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94933#factENTRY ~n := #in~n; 95111#L25 assume ~n <= 0;#res := 1; 94936#factFINAL assume true; 94923#factEXIT >#72#return; 94929#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; 95133#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 95132#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95131#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 95129#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; 94408#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94494#factENTRY ~n := #in~n; 94677#L25 assume !(~n <= 0); 94542#L26 call #t~ret0 := fact(~n - 1);< 94575#factENTRY ~n := #in~n; 94581#L25 assume !(~n <= 0); 94541#L26 call #t~ret0 := fact(~n - 1);< 94580#factENTRY ~n := #in~n; 94589#L25 assume ~n <= 0;#res := 1; 94588#factFINAL assume true; 94585#factEXIT >#66#return; 94584#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94582#factFINAL assume true; 94578#factEXIT >#66#return; 94579#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95211#factFINAL assume true; 94402#factEXIT >#74#return; 94416#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94669#factENTRY ~n := #in~n; 94670#L25 assume !(~n <= 0); 94545#L26 call #t~ret0 := fact(~n - 1);< 94575#factENTRY ~n := #in~n; 94671#L25 assume ~n <= 0;#res := 1; 94663#factFINAL assume true; 94572#factEXIT >#66#return; 94574#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95128#factFINAL assume true; 94915#factEXIT >#76#return; 94477#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94908#factENTRY ~n := #in~n; 95122#L25 assume !(~n <= 0); 94427#L26 call #t~ret0 := fact(~n - 1);< 94451#factENTRY ~n := #in~n; 94452#L25 assume ~n <= 0;#res := 1; 94453#factFINAL assume true; 94426#factEXIT >#66#return; 94437#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 95120#factFINAL assume true; 95119#factEXIT >#78#return; 94141#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; 95226#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 95225#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 95224#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 95223#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 95222#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 94222#L42-3 [2022-07-23 14:17:43,655 INFO L754 eck$LassoCheckResult]: Loop: 94222#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94218#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; 94074#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94217#factENTRY ~n := #in~n; 94216#L25 assume !(~n <= 0); 94072#L26 call #t~ret0 := fact(~n - 1);< 94075#factENTRY ~n := #in~n; 94242#L25 assume !(~n <= 0); 94236#L26 call #t~ret0 := fact(~n - 1);< 94240#factENTRY ~n := #in~n; 94245#L25 assume ~n <= 0;#res := 1; 94250#factFINAL assume true; 94244#factEXIT >#66#return; 94237#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94239#factFINAL assume true; 94235#factEXIT >#66#return; 94230#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94228#factFINAL assume true; 94224#factEXIT >#68#return; 94220#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94221#factENTRY ~n := #in~n; 94227#L25 assume ~n <= 0;#res := 1; 94223#factFINAL assume true; 94219#factEXIT >#70#return; 94073#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94217#factENTRY ~n := #in~n; 94216#L25 assume !(~n <= 0); 94072#L26 call #t~ret0 := fact(~n - 1);< 94075#factENTRY ~n := #in~n; 94242#L25 assume !(~n <= 0); 94236#L26 call #t~ret0 := fact(~n - 1);< 94240#factENTRY ~n := #in~n; 94245#L25 assume ~n <= 0;#res := 1; 94250#factFINAL assume true; 94244#factEXIT >#66#return; 94237#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94239#factFINAL assume true; 94235#factEXIT >#66#return; 94230#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94228#factFINAL assume true; 94224#factEXIT >#72#return; 94225#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; 94342#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 94341#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94340#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94338#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; 94052#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94053#factENTRY ~n := #in~n; 94062#L25 assume !(~n <= 0); 94158#L26 call #t~ret0 := fact(~n - 1);< 94171#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94178#L25 assume ~n <= 0;#res := 1; 94187#factFINAL assume true; 94185#factEXIT >#66#return; 94182#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94183#factFINAL assume true; 94175#factEXIT >#66#return; 94161#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94319#factFINAL assume true; 94313#factEXIT >#68#return; 94115#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94049#factENTRY ~n := #in~n; 94339#L25 assume !(~n <= 0); 94043#L26 call #t~ret0 := fact(~n - 1);< 94208#factENTRY ~n := #in~n; 94349#L25 assume ~n <= 0;#res := 1; 94348#factFINAL assume true; 94041#factEXIT >#66#return; 94044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94337#factFINAL assume true; 94335#factEXIT >#70#return; 94317#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94049#factENTRY ~n := #in~n; 94339#L25 assume !(~n <= 0); 94043#L26 call #t~ret0 := fact(~n - 1);< 94208#factENTRY ~n := #in~n; 94349#L25 assume ~n <= 0;#res := 1; 94348#factFINAL assume true; 94041#factEXIT >#66#return; 94044#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94337#factFINAL assume true; 94335#factEXIT >#72#return; 94293#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; 94331#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 94325#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94323#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94321#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; 94287#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94294#factENTRY ~n := #in~n; 94318#L25 assume !(~n <= 0); 94043#L26 call #t~ret0 := fact(~n - 1);< 94208#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94178#L25 assume ~n <= 0;#res := 1; 94187#factFINAL assume true; 94185#factEXIT >#66#return; 94182#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94183#factFINAL assume true; 94175#factEXIT >#66#return; 94161#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94319#factFINAL assume true; 94313#factEXIT >#68#return; 94316#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94049#factENTRY ~n := #in~n; 94339#L25 assume !(~n <= 0); 94043#L26 call #t~ret0 := fact(~n - 1);< 94208#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94178#L25 assume ~n <= 0;#res := 1; 94187#factFINAL assume true; 94185#factEXIT >#66#return; 94182#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94183#factFINAL assume true; 94175#factEXIT >#66#return; 94161#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94319#factFINAL assume true; 94313#factEXIT >#70#return; 94290#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94294#factENTRY ~n := #in~n; 94318#L25 assume ~n <= 0;#res := 1; 94312#factFINAL assume true; 94286#factEXIT >#72#return; 94284#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; 94276#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 94267#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94265#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 94262#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; 94037#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 94038#factENTRY ~n := #in~n; 94209#L25 assume !(~n <= 0); 94042#L26 call #t~ret0 := fact(~n - 1);< 94208#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94178#L25 assume ~n <= 0;#res := 1; 94187#factFINAL assume true; 94185#factEXIT >#66#return; 94182#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94183#factFINAL assume true; 94175#factEXIT >#66#return; 94162#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94173#factFINAL assume true; 94157#factEXIT >#66#return; 94155#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94156#factFINAL assume true; 94146#factEXIT >#74#return; 94147#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 94191#factENTRY ~n := #in~n; 94188#L25 assume !(~n <= 0); 94159#L26 call #t~ret0 := fact(~n - 1);< 94171#factENTRY ~n := #in~n; 94174#L25 assume !(~n <= 0); 94160#L26 call #t~ret0 := fact(~n - 1);< 94177#factENTRY ~n := #in~n; 94178#L25 assume ~n <= 0;#res := 1; 94187#factFINAL assume true; 94185#factEXIT >#66#return; 94182#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94183#factFINAL assume true; 94175#factEXIT >#66#return; 94176#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94196#factFINAL assume true; 94193#factEXIT >#76#return; 94111#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 94350#factENTRY ~n := #in~n; 94110#L25 assume !(~n <= 0); 94112#L26 call #t~ret0 := fact(~n - 1);< 94206#factENTRY ~n := #in~n; 94210#L25 assume ~n <= 0;#res := 1; 94207#factFINAL assume true; 94197#factEXIT >#66#return; 94192#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 94144#factFINAL assume true; 94145#factEXIT >#78#return; 94068#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; 94069#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 94078#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 94127#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 94128#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 94226#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 94222#L42-3 [2022-07-23 14:17:43,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:43,656 INFO L85 PathProgramCache]: Analyzing trace with hash -2130689589, now seen corresponding path program 10 times [2022-07-23 14:17:43,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:43,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [393918124] [2022-07-23 14:17:43,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:43,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:43,663 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:43,663 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1127914615] [2022-07-23 14:17:43,663 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:17:43,663 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:43,664 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:43,665 INFO L229 MonitoredProcess]: Starting monitored process 123 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:17:43,666 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (123)] Waiting until timeout for monitored process [2022-07-23 14:17:43,774 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:17:43,774 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:17:43,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 414 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-23 14:17:43,778 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:17:43,834 INFO L134 CoverageAnalysis]: Checked inductivity of 1475 backedges. 802 proven. 7 refuted. 0 times theorem prover too weak. 666 trivial. 0 not checked. [2022-07-23 14:17:43,834 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:17:44,031 INFO L134 CoverageAnalysis]: Checked inductivity of 1475 backedges. 170 proven. 72 refuted. 0 times theorem prover too weak. 1233 trivial. 0 not checked. [2022-07-23 14:17:44,031 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:17:44,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [393918124] [2022-07-23 14:17:44,032 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:17:44,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1127914615] [2022-07-23 14:17:44,032 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1127914615] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:17:44,032 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:17:44,032 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2022-07-23 14:17:44,032 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1222242943] [2022-07-23 14:17:44,032 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:17:44,032 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:17:44,033 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:17:44,033 INFO L85 PathProgramCache]: Analyzing trace with hash -1676318190, now seen corresponding path program 10 times [2022-07-23 14:17:44,033 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:17:44,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1000058321] [2022-07-23 14:17:44,033 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:17:44,033 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:17:44,039 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:17:44,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1134364715] [2022-07-23 14:17:44,039 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:17:44,039 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:17:44,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:17:44,041 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) [2022-07-23 14:17:44,042 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (124)] Waiting until timeout for monitored process [2022-07-23 14:17:44,226 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:17:44,226 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:17:44,226 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:17:44,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:17:44,306 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:09,736 WARN L233 SmtUtils]: Spent 2.40m on a formula simplification. DAG size of input: 255 DAG size of output: 231 (called from [L 279] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2022-07-23 14:20:21,874 WARN L233 SmtUtils]: Spent 12.01s on a formula simplification. DAG size of input: 4 DAG size of output: 1 (called from [L 813] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2022-07-23 14:20:22,783 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:20:22,783 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:20:22,783 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:20:22,783 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:20:22,783 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-23 14:20:22,783 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:22,783 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:20:22,783 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:20:22,783 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration21_Loop [2022-07-23 14:20:22,783 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:20:22,783 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:20:22,784 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,950 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,952 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,953 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,954 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,955 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,957 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:22,958 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,350 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:20:23,350 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-23 14:20:23,350 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:23,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:23,352 INFO L229 MonitoredProcess]: Starting monitored process 125 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:20:23,353 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Waiting until timeout for monitored process [2022-07-23 14:20:23,358 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-23 14:20:23,358 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:20:23,392 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Forceful destruction successful, exit code 0 [2022-07-23 14:20:23,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:23,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:23,393 INFO L229 MonitoredProcess]: Starting monitored process 126 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:20:23,400 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-23 14:20:23,400 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-23 14:20:23,404 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Waiting until timeout for monitored process [2022-07-23 14:20:23,413 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-23 14:20:23,428 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 [2022-07-23 14:20:23,428 INFO L210 LassoAnalysis]: Preferences: [2022-07-23 14:20:23,428 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-23 14:20:23,428 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-23 14:20:23,429 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-23 14:20:23,429 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-23 14:20:23,429 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:23,429 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-23 14:20:23,429 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-23 14:20:23,429 INFO L133 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration21_Loop [2022-07-23 14:20:23,429 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-23 14:20:23,429 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-23 14:20:23,430 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,434 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,435 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,436 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,618 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,619 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,620 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:23,622 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-23 14:20:24,105 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-23 14:20:24,106 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-23 14:20:24,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:24,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:24,108 INFO L229 MonitoredProcess]: Starting monitored process 127 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:20:24,109 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Waiting until timeout for monitored process [2022-07-23 14:20:24,109 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:20:24,114 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:20:24,114 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:20:24,115 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:20:24,115 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:20:24,115 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:20:24,115 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:20:24,115 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:20:24,116 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:20:24,131 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Ended with exit code 0 [2022-07-23 14:20:24,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:24,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:24,132 INFO L229 MonitoredProcess]: Starting monitored process 128 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-23 14:20:24,135 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Waiting until timeout for monitored process [2022-07-23 14:20:24,135 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:20:24,141 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:20:24,141 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:20:24,141 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:20:24,141 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:20:24,141 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:20:24,141 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:20:24,141 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:20:24,142 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:20:24,158 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Ended with exit code 0 [2022-07-23 14:20:24,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:24,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:24,160 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) [2022-07-23 14:20:24,160 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 [2022-07-23 14:20:24,161 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:20:24,167 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:20:24,167 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:20:24,167 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:20:24,167 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:20:24,167 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:20:24,168 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:20:24,168 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:20:24,169 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2022-07-23 14:20:24,183 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (129)] Ended with exit code 0 [2022-07-23 14:20:24,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:24,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:24,185 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) [2022-07-23 14:20:24,185 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 [2022-07-23 14:20:24,186 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-23 14:20:24,192 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-23 14:20:24,192 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-23 14:20:24,192 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-23 14:20:24,192 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-23 14:20:24,192 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-23 14:20:24,196 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-23 14:20:24,196 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-23 14:20:24,211 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-23 14:20:24,214 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-23 14:20:24,214 INFO L444 ModelExtractionUtils]: 7 out of 10 variables were initially zero. Simplification set additionally 0 variables to zero. [2022-07-23 14:20:24,214 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-23 14:20:24,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:24,216 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) [2022-07-23 14:20:24,216 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 [2022-07-23 14:20:24,217 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-23 14:20:24,217 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-23 14:20:24,217 INFO L513 LassoAnalysis]: Proved termination. [2022-07-23 14:20:24,217 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 [] [2022-07-23 14:20:24,232 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (130)] Ended with exit code 0 [2022-07-23 14:20:24,233 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-23 14:20:24,241 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:24,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:20:24,366 INFO L263 TraceCheckSpWp]: Trace formula consists of 1142 conjuncts, 54 conjunts are in the unsatisfiable core [2022-07-23 14:20:24,370 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:24,506 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (131)] Forceful destruction successful, exit code 0 [2022-07-23 14:20:25,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:20:25,265 INFO L263 TraceCheckSpWp]: Trace formula consists of 1268 conjuncts, 72 conjunts are in the unsatisfiable core [2022-07-23 14:20:25,268 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:25,811 INFO L134 CoverageAnalysis]: Checked inductivity of 2083 backedges. 7 proven. 316 refuted. 0 times theorem prover too weak. 1760 trivial. 0 not checked. [2022-07-23 14:20:25,811 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 9 loop predicates [2022-07-23 14:20:25,811 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1831 states and 2561 transitions. cyclomatic complexity: 751 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) [2022-07-23 14:20:26,203 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1831 states and 2561 transitions. cyclomatic complexity: 751. 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 5291 states and 7760 transitions. Complement of second has 38 states. [2022-07-23 14:20:26,204 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 [2022-07-23 14:20:26,204 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) [2022-07-23 14:20:26,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 97 transitions. [2022-07-23 14:20:26,205 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 97 transitions. Stem has 177 letters. Loop has 191 letters. [2022-07-23 14:20:26,205 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:20:26,205 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 97 transitions. Stem has 368 letters. Loop has 191 letters. [2022-07-23 14:20:26,206 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:20:26,206 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 97 transitions. Stem has 177 letters. Loop has 382 letters. [2022-07-23 14:20:26,208 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-23 14:20:26,208 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5291 states and 7760 transitions. [2022-07-23 14:20:26,237 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 132 [2022-07-23 14:20:26,257 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5291 states to 3046 states and 4443 transitions. [2022-07-23 14:20:26,257 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 291 [2022-07-23 14:20:26,258 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 292 [2022-07-23 14:20:26,258 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3046 states and 4443 transitions. [2022-07-23 14:20:26,258 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:26,258 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3046 states and 4443 transitions. [2022-07-23 14:20:26,260 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3046 states and 4443 transitions. [2022-07-23 14:20:26,303 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3046 to 2765. [2022-07-23 14:20:26,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2765 states, 1760 states have (on average 1.0863636363636364) internal successors, (1912), 1791 states have internal predecessors, (1912), 684 states have call successors, (713), 278 states have call predecessors, (713), 321 states have return successors, (1296), 695 states have call predecessors, (1296), 684 states have call successors, (1296) [2022-07-23 14:20:26,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2765 states to 2765 states and 3921 transitions. [2022-07-23 14:20:26,315 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2765 states and 3921 transitions. [2022-07-23 14:20:26,315 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:26,316 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-23 14:20:26,316 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-07-23 14:20:26,316 INFO L87 Difference]: Start difference. First operand 2765 states and 3921 transitions. Second operand has 10 states, 9 states have (on average 6.0) internal successors, (54), 10 states have internal predecessors, (54), 7 states have call successors, (24), 2 states have call predecessors, (24), 4 states have return successors, (24), 6 states have call predecessors, (24), 7 states have call successors, (24) [2022-07-23 14:20:26,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:26,620 INFO L93 Difference]: Finished difference Result 2906 states and 4097 transitions. [2022-07-23 14:20:26,621 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-23 14:20:26,621 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2906 states and 4097 transitions. [2022-07-23 14:20:26,635 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 123 [2022-07-23 14:20:26,652 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2906 states to 2906 states and 4096 transitions. [2022-07-23 14:20:26,652 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 269 [2022-07-23 14:20:26,652 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 269 [2022-07-23 14:20:26,652 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2906 states and 4096 transitions. [2022-07-23 14:20:26,652 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:26,653 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2906 states and 4096 transitions. [2022-07-23 14:20:26,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2906 states and 4096 transitions. [2022-07-23 14:20:26,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2906 to 2774. [2022-07-23 14:20:26,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2774 states, 1765 states have (on average 1.0861189801699718) internal successors, (1917), 1797 states have internal predecessors, (1917), 688 states have call successors, (718), 278 states have call predecessors, (718), 321 states have return successors, (1301), 698 states have call predecessors, (1301), 688 states have call successors, (1301) [2022-07-23 14:20:26,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2774 states to 2774 states and 3936 transitions. [2022-07-23 14:20:26,703 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2774 states and 3936 transitions. [2022-07-23 14:20:26,703 INFO L374 stractBuchiCegarLoop]: Abstraction has 2774 states and 3936 transitions. [2022-07-23 14:20:26,703 INFO L287 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2022-07-23 14:20:26,704 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2774 states and 3936 transitions. [2022-07-23 14:20:26,710 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 112 [2022-07-23 14:20:26,710 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:26,710 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:26,711 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [25, 25, 15, 10, 10, 10, 10, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] [2022-07-23 14:20:26,711 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [35, 35, 23, 23, 23, 23, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:20:26,711 INFO L752 eck$LassoCheckResult]: Stem: 109143#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 109116#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; 109117#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 109142#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; 109129#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 109130#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109601#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; 109597#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109598#factENTRY ~n := #in~n; 109602#L25 assume ~n <= 0;#res := 1; 109600#factFINAL assume true; 109596#factEXIT >#68#return; 109591#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109592#factENTRY ~n := #in~n; 109599#L25 assume ~n <= 0;#res := 1; 109595#factFINAL assume true; 109590#factEXIT >#70#return; 109586#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109587#factENTRY ~n := #in~n; 109594#L25 assume ~n <= 0;#res := 1; 109589#factFINAL assume true; 109585#factEXIT >#72#return; 109581#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; 109582#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109662#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109661#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109660#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; 109637#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109638#factENTRY ~n := #in~n; 109645#L25 assume !(~n <= 0); 109642#L26 call #t~ret0 := fact(~n - 1);< 109643#factENTRY ~n := #in~n; 109646#L25 assume ~n <= 0;#res := 1; 109644#factFINAL assume true; 109641#factEXIT >#66#return; 109640#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109639#factFINAL assume true; 109636#factEXIT >#74#return; 109631#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109632#factENTRY ~n := #in~n; 109635#L25 assume ~n <= 0;#res := 1; 109634#factFINAL assume true; 109630#factEXIT >#76#return; 109148#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109550#factENTRY ~n := #in~n; 109551#L25 assume !(~n <= 0); 109504#L26 call #t~ret0 := fact(~n - 1);< 109531#factENTRY ~n := #in~n; 109528#L25 assume ~n <= 0;#res := 1; 109529#factFINAL assume true; 109502#factEXIT >#66#return; 109147#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109149#factFINAL assume true; 109892#factEXIT >#78#return; 109499#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; 110750#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 110749#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 110745#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 110743#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 110741#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 110740#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 110739#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; 110699#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 110702#factENTRY ~n := #in~n; 110738#L25 assume !(~n <= 0); 110730#L26 call #t~ret0 := fact(~n - 1);< 110748#factENTRY ~n := #in~n; 110755#L25 assume ~n <= 0;#res := 1; 110751#factFINAL assume true; 110746#factEXIT >#66#return; 110744#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110742#factFINAL assume true; 110737#factEXIT >#68#return; 110717#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 110722#factENTRY ~n := #in~n; 110752#L25 assume ~n <= 0;#res := 1; 110735#factFINAL assume true; 110716#factEXIT >#70#return; 110720#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 110754#factENTRY ~n := #in~n; 110753#L25 assume !(~n <= 0); 110728#L26 call #t~ret0 := fact(~n - 1);< 110748#factENTRY ~n := #in~n; 110755#L25 assume ~n <= 0;#res := 1; 110751#factFINAL assume true; 110746#factEXIT >#66#return; 110747#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111450#factFINAL assume true; 111438#factEXIT >#72#return; 111439#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; 111449#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 111434#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 111404#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 111402#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; 111347#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 111317#factENTRY ~n := #in~n; 111598#L25 assume !(~n <= 0); 111369#L26 call #t~ret0 := fact(~n - 1);< 111384#factENTRY ~n := #in~n; 111385#L25 assume ~n <= 0;#res := 1; 111379#factFINAL assume true; 111367#factEXIT >#66#return; 111376#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111364#factFINAL assume true; 111338#factEXIT >#68#return; 111046#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 111085#factENTRY ~n := #in~n; 111043#L25 assume !(~n <= 0); 110094#L26 call #t~ret0 := fact(~n - 1);< 110679#factENTRY ~n := #in~n; 110950#L25 assume ~n <= 0;#res := 1; 110862#factFINAL assume true; 110675#factEXIT >#66#return; 110676#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111436#factFINAL assume true; 111414#factEXIT >#70#return; 111288#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 111297#factENTRY ~n := #in~n; 111325#L25 assume ~n <= 0;#res := 1; 111323#factFINAL assume true; 111287#factEXIT >#72#return; 111295#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; 111509#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 111501#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 111489#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 111433#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; 110079#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 110707#factENTRY ~n := #in~n; 110951#L25 assume !(~n <= 0); 110091#L26 call #t~ret0 := fact(~n - 1);< 110679#factENTRY ~n := #in~n; 110135#L25 assume !(~n <= 0); 110098#L26 call #t~ret0 := fact(~n - 1);< 110226#factENTRY ~n := #in~n; 110251#L25 assume ~n <= 0;#res := 1; 110249#factFINAL assume true; 110247#factEXIT >#66#return; 110246#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110130#factFINAL assume true; 110125#factEXIT >#66#return; 110127#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 110859#factFINAL assume true; 110852#factEXIT >#74#return; 110854#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 111052#factENTRY ~n := #in~n; 111053#L25 assume !(~n <= 0); 110099#L26 call #t~ret0 := fact(~n - 1);< 110679#factENTRY ~n := #in~n; 110950#L25 assume ~n <= 0;#res := 1; 110862#factFINAL assume true; 110675#factEXIT >#66#return; 110678#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 111391#factFINAL assume true; 111388#factEXIT >#76#return; 109909#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 110651#factENTRY ~n := #in~n; 110652#L25 assume !(~n <= 0); 109931#L26 call #t~ret0 := fact(~n - 1);< 110442#factENTRY ~n := #in~n; 109949#L25 assume ~n <= 0;#res := 1; 109950#factFINAL assume true; 109918#factEXIT >#66#return; 109935#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109908#factFINAL assume true; 109913#factEXIT >#78#return; 109490#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; 111447#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 111446#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 111445#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 111444#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 111443#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 109407#L42-3 [2022-07-23 14:20:26,712 INFO L754 eck$LassoCheckResult]: Loop: 109407#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109406#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; 109396#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109398#factENTRY ~n := #in~n; 109419#L25 assume !(~n <= 0); 109415#L26 call #t~ret0 := fact(~n - 1);< 109124#factENTRY ~n := #in~n; 109424#L25 assume !(~n <= 0); 109414#L26 call #t~ret0 := fact(~n - 1);< 109422#factENTRY ~n := #in~n; 109424#L25 assume !(~n <= 0); 109414#L26 call #t~ret0 := fact(~n - 1);< 109422#factENTRY ~n := #in~n; 109425#L25 assume ~n <= 0;#res := 1; 109435#factFINAL assume true; 109433#factEXIT >#66#return; 109432#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109430#factFINAL assume true; 109426#factEXIT >#66#return; 109417#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109421#factFINAL assume true; 109413#factEXIT >#66#return; 109412#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109411#factFINAL assume true; 109404#factEXIT >#68#return; 109401#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109402#factENTRY ~n := #in~n; 109420#L25 assume ~n <= 0;#res := 1; 109418#factFINAL assume true; 109400#factEXIT >#70#return; 109397#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109398#factENTRY ~n := #in~n; 109419#L25 assume !(~n <= 0); 109415#L26 call #t~ret0 := fact(~n - 1);< 109124#factENTRY ~n := #in~n; 109424#L25 assume !(~n <= 0); 109414#L26 call #t~ret0 := fact(~n - 1);< 109422#factENTRY ~n := #in~n; 109425#L25 assume ~n <= 0;#res := 1; 109435#factFINAL assume true; 109433#factEXIT >#66#return; 109432#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109430#factFINAL assume true; 109426#factEXIT >#66#return; 109427#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109428#factFINAL assume true; 109395#factEXIT >#72#return; 109394#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; 109393#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109392#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109390#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109389#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; 109308#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109385#factENTRY ~n := #in~n; 109452#L25 assume !(~n <= 0); 109192#L26 call #t~ret0 := fact(~n - 1);< 109216#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109249#L25 assume ~n <= 0;#res := 1; 109250#factFINAL assume true; 109229#factEXIT >#66#return; 109224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109225#factFINAL assume true; 109191#factEXIT >#66#return; 109202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109222#factFINAL assume true; 109205#factEXIT >#66#return; 109206#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109325#factFINAL assume true; 109316#factEXIT >#68#return; 109311#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109314#factENTRY ~n := #in~n; 109391#L25 assume !(~n <= 0); 109197#L26 call #t~ret0 := fact(~n - 1);< 109244#factENTRY ~n := #in~n; 109423#L25 assume ~n <= 0;#res := 1; 109399#factFINAL assume true; 109387#factEXIT >#66#return; 109386#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109384#factFINAL assume true; 109382#factEXIT >#70#return; 109310#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109314#factENTRY ~n := #in~n; 109391#L25 assume !(~n <= 0); 109197#L26 call #t~ret0 := fact(~n - 1);< 109244#factENTRY ~n := #in~n; 109423#L25 assume ~n <= 0;#res := 1; 109399#factFINAL assume true; 109387#factEXIT >#66#return; 109386#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109384#factFINAL assume true; 109382#factEXIT >#72#return; 109278#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; 109472#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109470#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109468#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109438#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; 109272#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109279#factENTRY ~n := #in~n; 109295#L25 assume !(~n <= 0); 109197#L26 call #t~ret0 := fact(~n - 1);< 109244#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109249#L25 assume ~n <= 0;#res := 1; 109250#factFINAL assume true; 109229#factEXIT >#66#return; 109224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109225#factFINAL assume true; 109191#factEXIT >#66#return; 109202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109222#factFINAL assume true; 109205#factEXIT >#66#return; 109206#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109325#factFINAL assume true; 109316#factEXIT >#68#return; 109312#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109314#factENTRY ~n := #in~n; 109391#L25 assume !(~n <= 0); 109197#L26 call #t~ret0 := fact(~n - 1);< 109244#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109249#L25 assume ~n <= 0;#res := 1; 109250#factFINAL assume true; 109229#factEXIT >#66#return; 109224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109225#factFINAL assume true; 109191#factEXIT >#66#return; 109202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109222#factFINAL assume true; 109205#factEXIT >#66#return; 109206#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109325#factFINAL assume true; 109316#factEXIT >#70#return; 109273#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109279#factENTRY ~n := #in~n; 109295#L25 assume ~n <= 0;#res := 1; 109285#factFINAL assume true; 109271#factEXIT >#72#return; 109277#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; 109265#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 109261#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109258#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 109254#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; 109077#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 109078#factENTRY ~n := #in~n; 109223#L25 assume !(~n <= 0); 109198#L26 call #t~ret0 := fact(~n - 1);< 109244#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109249#L25 assume ~n <= 0;#res := 1; 109250#factFINAL assume true; 109229#factEXIT >#66#return; 109224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109225#factFINAL assume true; 109191#factEXIT >#66#return; 109202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109222#factFINAL assume true; 109205#factEXIT >#66#return; 109207#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109184#factFINAL assume true; 109186#factEXIT >#74#return; 109181#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 109221#factENTRY ~n := #in~n; 109218#L25 assume !(~n <= 0); 109193#L26 call #t~ret0 := fact(~n - 1);< 109216#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109226#L25 assume !(~n <= 0); 109196#L26 call #t~ret0 := fact(~n - 1);< 109243#factENTRY ~n := #in~n; 109249#L25 assume ~n <= 0;#res := 1; 109250#factFINAL assume true; 109229#factEXIT >#66#return; 109224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109225#factFINAL assume true; 109191#factEXIT >#66#return; 109202#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109222#factFINAL assume true; 109205#factEXIT >#66#return; 109207#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109184#factFINAL assume true; 109186#factEXIT >#76#return; 109264#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 109322#factENTRY ~n := #in~n; 109442#L25 assume !(~n <= 0); 109240#L26 call #t~ret0 := fact(~n - 1);< 109242#factENTRY ~n := #in~n; 109246#L25 assume ~n <= 0;#res := 1; 109245#factFINAL assume true; 109238#factEXIT >#66#return; 109241#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 109437#factFINAL assume true; 109263#factEXIT >#78#return; 109118#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; 109119#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 109127#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 109171#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 109139#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 109140#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 109407#L42-3 [2022-07-23 14:20:26,712 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:26,712 INFO L85 PathProgramCache]: Analyzing trace with hash 736681859, now seen corresponding path program 11 times [2022-07-23 14:20:26,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:26,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1021077829] [2022-07-23 14:20:26,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:26,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:26,719 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:26,719 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2110131704] [2022-07-23 14:20:26,719 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:20:26,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:26,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:26,724 INFO L229 MonitoredProcess]: Starting monitored process 132 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:26,748 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (132)] Waiting until timeout for monitored process [2022-07-23 14:20:26,827 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 15 check-sat command(s) [2022-07-23 14:20:26,827 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:26,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 356 conjuncts, 13 conjunts are in the unsatisfiable core [2022-07-23 14:20:26,830 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:26,968 INFO L134 CoverageAnalysis]: Checked inductivity of 1355 backedges. 628 proven. 95 refuted. 0 times theorem prover too weak. 632 trivial. 0 not checked. [2022-07-23 14:20:26,968 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:27,238 INFO L134 CoverageAnalysis]: Checked inductivity of 1355 backedges. 76 proven. 146 refuted. 0 times theorem prover too weak. 1133 trivial. 0 not checked. [2022-07-23 14:20:27,238 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:27,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1021077829] [2022-07-23 14:20:27,238 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:27,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2110131704] [2022-07-23 14:20:27,238 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2110131704] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:27,238 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:27,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 18 [2022-07-23 14:20:27,238 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1566928781] [2022-07-23 14:20:27,238 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:27,239 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:20:27,239 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:27,239 INFO L85 PathProgramCache]: Analyzing trace with hash 1118956442, now seen corresponding path program 11 times [2022-07-23 14:20:27,239 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:27,239 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1822494492] [2022-07-23 14:20:27,239 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:27,239 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:27,244 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:27,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [318014517] [2022-07-23 14:20:27,244 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:20:27,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:27,245 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:27,247 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) [2022-07-23 14:20:27,248 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (133)] Waiting until timeout for monitored process [2022-07-23 14:20:27,342 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 16 check-sat command(s) [2022-07-23 14:20:27,342 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:27,343 INFO L263 TraceCheckSpWp]: Trace formula consists of 416 conjuncts, 17 conjunts are in the unsatisfiable core [2022-07-23 14:20:27,346 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:27,463 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 1084 proven. 64 refuted. 0 times theorem prover too weak. 1775 trivial. 0 not checked. [2022-07-23 14:20:27,463 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:28,121 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 40 proven. 821 refuted. 0 times theorem prover too weak. 2062 trivial. 0 not checked. [2022-07-23 14:20:28,121 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:28,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1822494492] [2022-07-23 14:20:28,121 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:28,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [318014517] [2022-07-23 14:20:28,122 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [318014517] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:28,122 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:28,122 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 16] total 19 [2022-07-23 14:20:28,122 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2104837213] [2022-07-23 14:20:28,122 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:28,122 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:28,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:28,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-07-23 14:20:28,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=249, Unknown=0, NotChecked=0, Total=306 [2022-07-23 14:20:28,123 INFO L87 Difference]: Start difference. First operand 2774 states and 3936 transitions. cyclomatic complexity: 1189 Second operand has 18 states, 16 states have (on average 4.25) internal successors, (68), 18 states have internal predecessors, (68), 11 states have call successors, (29), 2 states have call predecessors, (29), 4 states have return successors, (29), 8 states have call predecessors, (29), 11 states have call successors, (29) [2022-07-23 14:20:28,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:28,597 INFO L93 Difference]: Finished difference Result 2938 states and 4208 transitions. [2022-07-23 14:20:28,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-07-23 14:20:28,598 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2938 states and 4208 transitions. [2022-07-23 14:20:28,613 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 119 [2022-07-23 14:20:28,635 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2938 states to 2883 states and 4137 transitions. [2022-07-23 14:20:28,635 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 259 [2022-07-23 14:20:28,636 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 259 [2022-07-23 14:20:28,636 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2883 states and 4137 transitions. [2022-07-23 14:20:28,636 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:28,636 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2883 states and 4137 transitions. [2022-07-23 14:20:28,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2883 states and 4137 transitions. [2022-07-23 14:20:28,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2883 to 2751. [2022-07-23 14:20:28,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2751 states, 1751 states have (on average 1.0839520274129069) internal successors, (1898), 1782 states have internal predecessors, (1898), 683 states have call successors, (713), 274 states have call predecessors, (713), 317 states have return successors, (1294), 694 states have call predecessors, (1294), 683 states have call successors, (1294) [2022-07-23 14:20:28,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2751 states to 2751 states and 3905 transitions. [2022-07-23 14:20:28,692 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2751 states and 3905 transitions. [2022-07-23 14:20:28,693 INFO L374 stractBuchiCegarLoop]: Abstraction has 2751 states and 3905 transitions. [2022-07-23 14:20:28,693 INFO L287 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2022-07-23 14:20:28,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2751 states and 3905 transitions. [2022-07-23 14:20:28,699 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 112 [2022-07-23 14:20:28,699 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:28,699 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:28,700 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [27, 27, 15, 12, 12, 12, 12, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] [2022-07-23 14:20:28,700 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [35, 35, 23, 23, 23, 23, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:20:28,701 INFO L752 eck$LassoCheckResult]: Stem: 117253#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 117221#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; 117222#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 117252#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; 117238#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 117239#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117698#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; 117692#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117693#factENTRY ~n := #in~n; 117699#L25 assume ~n <= 0;#res := 1; 117697#factFINAL assume true; 117691#factEXIT >#68#return; 117686#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117687#factENTRY ~n := #in~n; 117696#L25 assume ~n <= 0;#res := 1; 117690#factFINAL assume true; 117685#factEXIT >#70#return; 117679#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117680#factENTRY ~n := #in~n; 117689#L25 assume ~n <= 0;#res := 1; 117684#factFINAL assume true; 117678#factEXIT >#72#return; 117674#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; 117672#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 117669#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117663#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117660#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; 117657#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117658#factENTRY ~n := #in~n; 117671#L25 assume !(~n <= 0); 117665#L26 call #t~ret0 := fact(~n - 1);< 117668#factENTRY ~n := #in~n; 117683#L25 assume !(~n <= 0); 117666#L26 call #t~ret0 := fact(~n - 1);< 117677#factENTRY ~n := #in~n; 117682#L25 assume ~n <= 0;#res := 1; 117681#factFINAL assume true; 117676#factEXIT >#66#return; 117673#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117670#factFINAL assume true; 117664#factEXIT >#66#return; 117662#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117659#factFINAL assume true; 117656#factEXIT >#74#return; 117653#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117654#factENTRY ~n := #in~n; 117694#L25 assume ~n <= 0;#res := 1; 117695#factFINAL assume true; 117729#factEXIT >#76#return; 117644#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117795#factENTRY ~n := #in~n; 117643#L25 assume !(~n <= 0); 117612#L26 call #t~ret0 := fact(~n - 1);< 117609#factENTRY ~n := #in~n; 117633#L25 assume !(~n <= 0); 117611#L26 call #t~ret0 := fact(~n - 1);< 117631#factENTRY ~n := #in~n; 117634#L25 assume ~n <= 0;#res := 1; 117632#factFINAL assume true; 117629#factEXIT >#66#return; 117630#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119936#factFINAL assume true; 117625#factEXIT >#66#return; 117628#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117799#factFINAL assume true; 117788#factEXIT >#78#return; 117784#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; 117781#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 117599#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117594#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 117244#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 117245#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 119095#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 119094#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; 119040#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 119053#factENTRY ~n := #in~n; 119092#L25 assume !(~n <= 0); 119072#L26 call #t~ret0 := fact(~n - 1);< 119122#factENTRY ~n := #in~n; 119126#L25 assume ~n <= 0;#res := 1; 119123#factFINAL assume true; 119120#factEXIT >#66#return; 119119#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119118#factFINAL assume true; 119117#factEXIT >#68#return; 119059#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 119063#factENTRY ~n := #in~n; 119087#L25 assume ~n <= 0;#res := 1; 119082#factFINAL assume true; 119058#factEXIT >#70#return; 119061#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 119127#factENTRY ~n := #in~n; 119124#L25 assume !(~n <= 0); 119069#L26 call #t~ret0 := fact(~n - 1);< 119122#factENTRY ~n := #in~n; 119126#L25 assume ~n <= 0;#res := 1; 119123#factFINAL assume true; 119120#factEXIT >#66#return; 119121#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119208#factFINAL assume true; 119206#factEXIT >#72#return; 119205#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; 119203#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 119200#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 119188#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 119186#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; 119165#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 119183#factENTRY ~n := #in~n; 119289#L25 assume !(~n <= 0); 119192#L26 call #t~ret0 := fact(~n - 1);< 119199#factENTRY ~n := #in~n; 119204#L25 assume ~n <= 0;#res := 1; 119201#factFINAL assume true; 119189#factEXIT >#66#return; 119187#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119184#factFINAL assume true; 119161#factEXIT >#68#return; 118931#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 118941#factENTRY ~n := #in~n; 118930#L25 assume !(~n <= 0); 118234#L26 call #t~ret0 := fact(~n - 1);< 118269#factENTRY ~n := #in~n; 118929#L25 assume ~n <= 0;#res := 1; 118925#factFINAL assume true; 118921#factEXIT >#66#return; 118922#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119322#factFINAL assume true; 119321#factEXIT >#70#return; 119149#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 119156#factENTRY ~n := #in~n; 119158#L25 assume ~n <= 0;#res := 1; 119157#factFINAL assume true; 119146#factEXIT >#72#return; 119155#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; 119364#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 119362#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 119360#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 119355#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; 118152#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 118156#factENTRY ~n := #in~n; 119024#L25 assume !(~n <= 0); 118244#L26 call #t~ret0 := fact(~n - 1);< 118269#factENTRY ~n := #in~n; 118348#L25 assume !(~n <= 0); 118241#L26 call #t~ret0 := fact(~n - 1);< 118264#factENTRY ~n := #in~n; 118283#L25 assume ~n <= 0;#res := 1; 118284#factFINAL assume true; 118342#factEXIT >#66#return; 118278#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 118265#factFINAL assume true; 118260#factEXIT >#66#return; 118263#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 118916#factFINAL assume true; 118917#factEXIT >#74#return; 118926#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 118936#factENTRY ~n := #in~n; 118937#L25 assume !(~n <= 0); 118235#L26 call #t~ret0 := fact(~n - 1);< 118269#factENTRY ~n := #in~n; 118929#L25 assume ~n <= 0;#res := 1; 118925#factFINAL assume true; 118921#factEXIT >#66#return; 118923#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 119744#factFINAL assume true; 119314#factEXIT >#76#return; 118110#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 119738#factENTRY ~n := #in~n; 118109#L25 assume !(~n <= 0); 118018#L26 call #t~ret0 := fact(~n - 1);< 118598#factENTRY ~n := #in~n; 118046#L25 assume ~n <= 0;#res := 1; 118047#factFINAL assume true; 118014#factEXIT >#66#return; 118029#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 118122#factFINAL assume true; 118119#factEXIT >#78#return; 118004#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; 119210#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 119209#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117595#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 117596#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 119102#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 117564#L42-3 [2022-07-23 14:20:28,701 INFO L754 eck$LassoCheckResult]: Loop: 117564#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117559#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; 117539#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117544#factENTRY ~n := #in~n; 117537#L25 assume !(~n <= 0); 117540#L26 call #t~ret0 := fact(~n - 1);< 117229#factENTRY ~n := #in~n; 117576#L25 assume !(~n <= 0); 117566#L26 call #t~ret0 := fact(~n - 1);< 117575#factENTRY ~n := #in~n; 117576#L25 assume !(~n <= 0); 117566#L26 call #t~ret0 := fact(~n - 1);< 117575#factENTRY ~n := #in~n; 117578#L25 assume ~n <= 0;#res := 1; 117580#factFINAL assume true; 117579#factEXIT >#66#return; 117577#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117574#factFINAL assume true; 117565#factEXIT >#66#return; 117567#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117582#factFINAL assume true; 117571#factEXIT >#66#return; 117561#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117557#factFINAL assume true; 117550#factEXIT >#68#return; 117547#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117548#factENTRY ~n := #in~n; 117552#L25 assume ~n <= 0;#res := 1; 117549#factFINAL assume true; 117546#factEXIT >#70#return; 117538#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117544#factENTRY ~n := #in~n; 117537#L25 assume !(~n <= 0); 117540#L26 call #t~ret0 := fact(~n - 1);< 117229#factENTRY ~n := #in~n; 117576#L25 assume !(~n <= 0); 117566#L26 call #t~ret0 := fact(~n - 1);< 117575#factENTRY ~n := #in~n; 117578#L25 assume ~n <= 0;#res := 1; 117580#factFINAL assume true; 117579#factEXIT >#66#return; 117577#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117574#factFINAL assume true; 117565#factEXIT >#66#return; 117560#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117556#factFINAL assume true; 117543#factEXIT >#72#return; 117531#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; 117530#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 117529#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117525#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117522#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; 117495#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117508#factENTRY ~n := #in~n; 117520#L25 assume !(~n <= 0); 117297#L26 call #t~ret0 := fact(~n - 1);< 117313#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117358#L25 assume ~n <= 0;#res := 1; 117357#factFINAL assume true; 117356#factEXIT >#66#return; 117355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117354#factFINAL assume true; 117317#factEXIT >#66#return; 117300#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117315#factFINAL assume true; 117291#factEXIT >#66#return; 117301#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117507#factFINAL assume true; 117505#factEXIT >#68#return; 117494#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117501#factENTRY ~n := #in~n; 117514#L25 assume !(~n <= 0); 117296#L26 call #t~ret0 := fact(~n - 1);< 117352#factENTRY ~n := #in~n; 117526#L25 assume ~n <= 0;#res := 1; 117523#factFINAL assume true; 117511#factEXIT >#66#return; 117509#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117506#factFINAL assume true; 117503#factEXIT >#70#return; 117493#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117501#factENTRY ~n := #in~n; 117514#L25 assume !(~n <= 0); 117296#L26 call #t~ret0 := fact(~n - 1);< 117352#factENTRY ~n := #in~n; 117526#L25 assume ~n <= 0;#res := 1; 117523#factFINAL assume true; 117511#factEXIT >#66#return; 117509#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117506#factFINAL assume true; 117503#factEXIT >#72#return; 117486#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; 117536#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 117515#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117513#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117510#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; 117481#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117488#factENTRY ~n := #in~n; 117502#L25 assume !(~n <= 0); 117296#L26 call #t~ret0 := fact(~n - 1);< 117352#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117358#L25 assume ~n <= 0;#res := 1; 117357#factFINAL assume true; 117356#factEXIT >#66#return; 117355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117354#factFINAL assume true; 117317#factEXIT >#66#return; 117300#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117315#factFINAL assume true; 117291#factEXIT >#66#return; 117301#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117507#factFINAL assume true; 117505#factEXIT >#68#return; 117491#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117501#factENTRY ~n := #in~n; 117514#L25 assume !(~n <= 0); 117296#L26 call #t~ret0 := fact(~n - 1);< 117352#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117358#L25 assume ~n <= 0;#res := 1; 117357#factFINAL assume true; 117356#factEXIT >#66#return; 117355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117354#factFINAL assume true; 117317#factEXIT >#66#return; 117300#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117315#factFINAL assume true; 117291#factEXIT >#66#return; 117301#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117507#factFINAL assume true; 117505#factEXIT >#70#return; 117485#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117488#factENTRY ~n := #in~n; 117502#L25 assume ~n <= 0;#res := 1; 117489#factFINAL assume true; 117480#factEXIT >#72#return; 117487#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; 117479#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 117477#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117475#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 117470#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; 117191#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 117192#factENTRY ~n := #in~n; 117328#L25 assume !(~n <= 0); 117298#L26 call #t~ret0 := fact(~n - 1);< 117352#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117358#L25 assume ~n <= 0;#res := 1; 117357#factFINAL assume true; 117356#factEXIT >#66#return; 117355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117354#factFINAL assume true; 117317#factEXIT >#66#return; 117300#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117315#factFINAL assume true; 117291#factEXIT >#66#return; 117290#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117289#factFINAL assume true; 117285#factEXIT >#74#return; 117287#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 117273#factENTRY ~n := #in~n; 117329#L25 assume !(~n <= 0); 117293#L26 call #t~ret0 := fact(~n - 1);< 117313#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117316#L25 assume !(~n <= 0); 117295#L26 call #t~ret0 := fact(~n - 1);< 117351#factENTRY ~n := #in~n; 117358#L25 assume ~n <= 0;#res := 1; 117357#factFINAL assume true; 117356#factEXIT >#66#return; 117355#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117354#factFINAL assume true; 117317#factEXIT >#66#return; 117300#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117315#factFINAL assume true; 117291#factEXIT >#66#return; 117290#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117289#factFINAL assume true; 117285#factEXIT >#76#return; 117288#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 117439#factENTRY ~n := #in~n; 117418#L25 assume !(~n <= 0); 117345#L26 call #t~ret0 := fact(~n - 1);< 117350#factENTRY ~n := #in~n; 117359#L25 assume ~n <= 0;#res := 1; 117353#factFINAL assume true; 117344#factEXIT >#66#return; 117347#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 117377#factFINAL assume true; 117442#factEXIT >#78#return; 117223#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; 117224#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 117236#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 117279#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 117242#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 117243#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 117564#L42-3 [2022-07-23 14:20:28,702 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:28,702 INFO L85 PathProgramCache]: Analyzing trace with hash 1709111059, now seen corresponding path program 12 times [2022-07-23 14:20:28,702 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:28,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [226621731] [2022-07-23 14:20:28,702 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:28,702 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:28,717 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:28,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1179013848] [2022-07-23 14:20:28,717 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-23 14:20:28,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:28,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:28,723 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) [2022-07-23 14:20:28,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (134)] Waiting until timeout for monitored process [2022-07-23 14:20:28,794 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-07-23 14:20:28,795 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:28,796 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-23 14:20:28,798 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:28,855 INFO L134 CoverageAnalysis]: Checked inductivity of 1601 backedges. 602 proven. 5 refuted. 0 times theorem prover too weak. 994 trivial. 0 not checked. [2022-07-23 14:20:28,855 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:29,067 INFO L134 CoverageAnalysis]: Checked inductivity of 1601 backedges. 58 proven. 172 refuted. 0 times theorem prover too weak. 1371 trivial. 0 not checked. [2022-07-23 14:20:29,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:29,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [226621731] [2022-07-23 14:20:29,068 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:29,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1179013848] [2022-07-23 14:20:29,068 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1179013848] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:29,068 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:29,068 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 10 [2022-07-23 14:20:29,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1045904640] [2022-07-23 14:20:29,068 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:29,068 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-23 14:20:29,069 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:29,069 INFO L85 PathProgramCache]: Analyzing trace with hash 1118956442, now seen corresponding path program 12 times [2022-07-23 14:20:29,069 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:29,069 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1490648047] [2022-07-23 14:20:29,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:29,069 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:29,075 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:29,075 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1793930255] [2022-07-23 14:20:29,075 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-23 14:20:29,075 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:29,075 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:29,083 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) [2022-07-23 14:20:29,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (135)] Waiting until timeout for monitored process [2022-07-23 14:20:29,256 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 17 check-sat command(s) [2022-07-23 14:20:29,256 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:29,258 INFO L263 TraceCheckSpWp]: Trace formula consists of 423 conjuncts, 21 conjunts are in the unsatisfiable core [2022-07-23 14:20:29,260 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:29,420 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 723 proven. 390 refuted. 0 times theorem prover too weak. 1810 trivial. 0 not checked. [2022-07-23 14:20:29,420 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:30,098 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 421 proven. 446 refuted. 0 times theorem prover too weak. 2056 trivial. 0 not checked. [2022-07-23 14:20:30,098 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:30,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1490648047] [2022-07-23 14:20:30,098 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:30,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1793930255] [2022-07-23 14:20:30,099 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1793930255] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:30,099 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:30,099 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 18] total 22 [2022-07-23 14:20:30,099 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1973677152] [2022-07-23 14:20:30,099 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:30,100 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:30,100 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:30,100 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-07-23 14:20:30,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-07-23 14:20:30,100 INFO L87 Difference]: Start difference. First operand 2751 states and 3905 transitions. cyclomatic complexity: 1181 Second operand has 10 states, 9 states have (on average 4.888888888888889) internal successors, (44), 10 states have internal predecessors, (44), 7 states have call successors, (21), 2 states have call predecessors, (21), 4 states have return successors, (21), 5 states have call predecessors, (21), 7 states have call successors, (21) [2022-07-23 14:20:30,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:30,390 INFO L93 Difference]: Finished difference Result 2741 states and 3892 transitions. [2022-07-23 14:20:30,390 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-07-23 14:20:30,391 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2741 states and 3892 transitions. [2022-07-23 14:20:30,401 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 119 [2022-07-23 14:20:30,418 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2741 states to 2688 states and 3836 transitions. [2022-07-23 14:20:30,418 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 257 [2022-07-23 14:20:30,419 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 257 [2022-07-23 14:20:30,419 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2688 states and 3836 transitions. [2022-07-23 14:20:30,420 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:30,420 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2688 states and 3836 transitions. [2022-07-23 14:20:30,421 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2688 states and 3836 transitions. [2022-07-23 14:20:30,455 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2688 to 2608. [2022-07-23 14:20:30,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2608 states, 1660 states have (on average 1.080722891566265) internal successors, (1794), 1683 states have internal predecessors, (1794), 655 states have call successors, (685), 256 states have call predecessors, (685), 293 states have return successors, (1254), 668 states have call predecessors, (1254), 655 states have call successors, (1254) [2022-07-23 14:20:30,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2608 states to 2608 states and 3733 transitions. [2022-07-23 14:20:30,467 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2608 states and 3733 transitions. [2022-07-23 14:20:30,467 INFO L374 stractBuchiCegarLoop]: Abstraction has 2608 states and 3733 transitions. [2022-07-23 14:20:30,467 INFO L287 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2022-07-23 14:20:30,467 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2608 states and 3733 transitions. [2022-07-23 14:20:30,474 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 112 [2022-07-23 14:20:30,474 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:30,475 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:30,476 INFO L179 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] [2022-07-23 14:20:30,476 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [35, 35, 23, 23, 23, 23, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-23 14:20:30,476 INFO L752 eck$LassoCheckResult]: Stem: 125199#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 125168#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; 125169#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 125198#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; 125185#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 125186#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125639#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; 125635#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125636#factENTRY ~n := #in~n; 125640#L25 assume ~n <= 0;#res := 1; 125638#factFINAL assume true; 125634#factEXIT >#68#return; 125630#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125631#factENTRY ~n := #in~n; 125637#L25 assume ~n <= 0;#res := 1; 125633#factFINAL assume true; 125629#factEXIT >#70#return; 125626#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125627#factENTRY ~n := #in~n; 125632#L25 assume ~n <= 0;#res := 1; 125628#factFINAL assume true; 125625#factEXIT >#72#return; 125624#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; 125622#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 125619#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125615#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125613#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; 125609#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125610#factENTRY ~n := #in~n; 125621#L25 assume !(~n <= 0); 125617#L26 call #t~ret0 := fact(~n - 1);< 125618#factENTRY ~n := #in~n; 125623#L25 assume ~n <= 0;#res := 1; 125620#factFINAL assume true; 125616#factEXIT >#66#return; 125614#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125612#factFINAL assume true; 125608#factEXIT >#74#return; 125603#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125604#factENTRY ~n := #in~n; 125611#L25 assume ~n <= 0;#res := 1; 125607#factFINAL assume true; 125602#factEXIT >#76#return; 125599#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125600#factENTRY ~n := #in~n; 125714#L25 assume !(~n <= 0); 125707#L26 call #t~ret0 := fact(~n - 1);< 125713#factENTRY ~n := #in~n; 125793#L25 assume ~n <= 0;#res := 1; 125794#factFINAL assume true; 125704#factEXIT >#66#return; 125701#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125648#factFINAL assume true; 125598#factEXIT >#78#return; 125596#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; 125594#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 125592#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125589#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125586#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; 125568#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125582#factENTRY ~n := #in~n; 125564#L25 assume !(~n <= 0); 125553#L26 call #t~ret0 := fact(~n - 1);< 125575#factENTRY ~n := #in~n; 125571#L25 assume !(~n <= 0); 125562#L26 call #t~ret0 := fact(~n - 1);< 125563#factENTRY ~n := #in~n; 125606#L25 assume ~n <= 0;#res := 1; 125601#factFINAL assume true; 125597#factEXIT >#66#return; 125595#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125593#factFINAL assume true; 125590#factEXIT >#66#return; 125588#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125585#factFINAL assume true; 125584#factEXIT >#74#return; 125567#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125582#factENTRY ~n := #in~n; 125564#L25 assume ~n <= 0;#res := 1; 125570#factFINAL assume true; 125647#factEXIT >#76#return; 125556#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125645#factENTRY ~n := #in~n; 125643#L25 assume !(~n <= 0); 125555#L26 call #t~ret0 := fact(~n - 1);< 125557#factENTRY ~n := #in~n; 125571#L25 assume !(~n <= 0); 125562#L26 call #t~ret0 := fact(~n - 1);< 125563#factENTRY ~n := #in~n; 125606#L25 assume ~n <= 0;#res := 1; 125601#factFINAL assume true; 125597#factEXIT >#66#return; 125595#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125593#factFINAL assume true; 125590#factEXIT >#66#return; 125591#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125836#factFINAL assume true; 125830#factEXIT >#78#return; 125829#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; 125824#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 125821#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125822#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 125191#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 125192#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 126941#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 126940#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; 126849#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 126853#factENTRY ~n := #in~n; 126937#L25 assume !(~n <= 0); 126868#L26 call #t~ret0 := fact(~n - 1);< 127220#factENTRY ~n := #in~n; 127227#L25 assume ~n <= 0;#res := 1; 127225#factFINAL assume true; 127218#factEXIT >#66#return; 127219#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 127221#factFINAL assume true; 127217#factEXIT >#68#return; 126841#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 126846#factENTRY ~n := #in~n; 126875#L25 assume ~n <= 0;#res := 1; 126856#factFINAL assume true; 126840#factEXIT >#70#return; 126844#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 127214#factENTRY ~n := #in~n; 127222#L25 assume !(~n <= 0); 126869#L26 call #t~ret0 := fact(~n - 1);< 127220#factENTRY ~n := #in~n; 127227#L25 assume ~n <= 0;#res := 1; 127225#factFINAL assume true; 127218#factEXIT >#66#return; 127216#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 127215#factFINAL assume true; 127212#factEXIT >#72#return; 127211#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; 127209#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 127206#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 127193#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 127190#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; 127165#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 127182#factENTRY ~n := #in~n; 127576#L25 assume !(~n <= 0); 127196#L26 call #t~ret0 := fact(~n - 1);< 127204#factENTRY ~n := #in~n; 127210#L25 assume ~n <= 0;#res := 1; 127207#factFINAL assume true; 127194#factEXIT >#66#return; 127191#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 127183#factFINAL assume true; 127162#factEXIT >#68#return; 125145#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 126926#factENTRY ~n := #in~n; 126927#L25 assume !(~n <= 0); 126035#L26 call #t~ret0 := fact(~n - 1);< 126165#factENTRY ~n := #in~n; 126917#L25 assume ~n <= 0;#res := 1; 126915#factFINAL assume true; 126811#factEXIT >#66#return; 125207#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125208#factFINAL assume true; 125143#factEXIT >#70#return; 125149#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 127156#factENTRY ~n := #in~n; 127160#L25 assume ~n <= 0;#res := 1; 127158#factFINAL assume true; 127147#factEXIT >#72#return; 127152#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; 127730#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 127417#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 127415#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 127413#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; 126763#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 126773#factENTRY ~n := #in~n; 127379#L25 assume !(~n <= 0); 126036#L26 call #t~ret0 := fact(~n - 1);< 126165#factENTRY ~n := #in~n; 126169#L25 assume !(~n <= 0); 126041#L26 call #t~ret0 := fact(~n - 1);< 126166#factENTRY ~n := #in~n; 126079#L25 assume ~n <= 0;#res := 1; 126078#factFINAL assume true; 126077#factEXIT >#66#return; 126076#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 126070#factFINAL assume true; 126065#factEXIT >#66#return; 126067#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 126774#factFINAL assume true; 126768#factEXIT >#74#return; 126769#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 126929#factENTRY ~n := #in~n; 126924#L25 assume !(~n <= 0); 126038#L26 call #t~ret0 := fact(~n - 1);< 126165#factENTRY ~n := #in~n; 126917#L25 assume ~n <= 0;#res := 1; 126915#factFINAL assume true; 126811#factEXIT >#66#return; 126813#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 127115#factFINAL assume true; 127106#factEXIT >#76#return; 127087#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 127100#factENTRY ~n := #in~n; 127280#L25 assume !(~n <= 0); 125854#L26 call #t~ret0 := fact(~n - 1);< 125876#factENTRY ~n := #in~n; 125873#L25 assume ~n <= 0;#res := 1; 125874#factFINAL assume true; 125842#factEXIT >#66#return; 125861#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 127240#factFINAL assume true; 127234#factEXIT >#78#return; 127233#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; 127232#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 127231#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 127229#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 127228#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 127226#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 125453#L42-3 [2022-07-23 14:20:30,477 INFO L754 eck$LassoCheckResult]: Loop: 125453#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125450#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; 125436#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125439#factENTRY ~n := #in~n; 125484#L25 assume !(~n <= 0); 125465#L26 call #t~ret0 := fact(~n - 1);< 125176#factENTRY ~n := #in~n; 125481#L25 assume !(~n <= 0); 125466#L26 call #t~ret0 := fact(~n - 1);< 125471#factENTRY ~n := #in~n; 125481#L25 assume !(~n <= 0); 125466#L26 call #t~ret0 := fact(~n - 1);< 125471#factENTRY ~n := #in~n; 125479#L25 assume ~n <= 0;#res := 1; 125477#factFINAL assume true; 125475#factEXIT >#66#return; 125473#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125472#factFINAL assume true; 125464#factEXIT >#66#return; 125467#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125470#factFINAL assume true; 125469#factEXIT >#66#return; 125462#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125459#factFINAL assume true; 125448#factEXIT >#68#return; 125441#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125442#factENTRY ~n := #in~n; 125454#L25 assume ~n <= 0;#res := 1; 125447#factFINAL assume true; 125440#factEXIT >#70#return; 125437#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125439#factENTRY ~n := #in~n; 125484#L25 assume !(~n <= 0); 125465#L26 call #t~ret0 := fact(~n - 1);< 125176#factENTRY ~n := #in~n; 125481#L25 assume !(~n <= 0); 125466#L26 call #t~ret0 := fact(~n - 1);< 125471#factENTRY ~n := #in~n; 125481#L25 assume !(~n <= 0); 125466#L26 call #t~ret0 := fact(~n - 1);< 125471#factENTRY ~n := #in~n; 125479#L25 assume ~n <= 0;#res := 1; 125477#factFINAL assume true; 125475#factEXIT >#66#return; 125473#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125472#factFINAL assume true; 125464#factEXIT >#66#return; 125467#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125470#factFINAL assume true; 125469#factEXIT >#66#return; 125462#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125459#factFINAL assume true; 125448#factEXIT >#72#return; 125434#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; 125433#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 125431#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125429#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125427#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; 125363#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125424#factENTRY ~n := #in~n; 125422#L25 assume !(~n <= 0); 125259#L26 call #t~ret0 := fact(~n - 1);< 125271#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125281#L25 assume ~n <= 0;#res := 1; 125293#factFINAL assume true; 125288#factEXIT >#66#return; 125284#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125285#factFINAL assume true; 125275#factEXIT >#66#return; 125262#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125307#factFINAL assume true; 125253#factEXIT >#66#return; 125260#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125490#factFINAL assume true; 125388#factEXIT >#68#return; 125367#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125373#factENTRY ~n := #in~n; 125408#L25 assume !(~n <= 0); 125254#L26 call #t~ret0 := fact(~n - 1);< 125308#factENTRY ~n := #in~n; 125410#L25 assume ~n <= 0;#res := 1; 125406#factFINAL assume true; 125403#factEXIT >#66#return; 125401#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125400#factFINAL assume true; 125398#factEXIT >#70#return; 125364#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125373#factENTRY ~n := #in~n; 125408#L25 assume !(~n <= 0); 125254#L26 call #t~ret0 := fact(~n - 1);< 125308#factENTRY ~n := #in~n; 125410#L25 assume ~n <= 0;#res := 1; 125406#factFINAL assume true; 125403#factEXIT >#66#return; 125401#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125400#factFINAL assume true; 125398#factEXIT >#72#return; 125358#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; 125533#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 125394#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125392#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125390#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; 125356#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125360#factENTRY ~n := #in~n; 125489#L25 assume !(~n <= 0); 125254#L26 call #t~ret0 := fact(~n - 1);< 125308#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125281#L25 assume ~n <= 0;#res := 1; 125293#factFINAL assume true; 125288#factEXIT >#66#return; 125284#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125285#factFINAL assume true; 125275#factEXIT >#66#return; 125262#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125307#factFINAL assume true; 125253#factEXIT >#66#return; 125260#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125490#factFINAL assume true; 125388#factEXIT >#68#return; 125368#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125373#factENTRY ~n := #in~n; 125408#L25 assume !(~n <= 0); 125254#L26 call #t~ret0 := fact(~n - 1);< 125308#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125281#L25 assume ~n <= 0;#res := 1; 125293#factFINAL assume true; 125288#factEXIT >#66#return; 125284#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125285#factFINAL assume true; 125275#factEXIT >#66#return; 125276#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125420#factFINAL assume true; 125362#factEXIT >#70#return; 125354#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125360#factENTRY ~n := #in~n; 125489#L25 assume ~n <= 0;#res := 1; 125396#factFINAL assume true; 125352#factEXIT >#72#return; 125359#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; 125361#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 125351#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125348#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 125342#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; 125244#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 125135#factENTRY ~n := #in~n; 125286#L25 assume !(~n <= 0); 125255#L26 call #t~ret0 := fact(~n - 1);< 125308#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125281#L25 assume ~n <= 0;#res := 1; 125293#factFINAL assume true; 125288#factEXIT >#66#return; 125284#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125285#factFINAL assume true; 125275#factEXIT >#66#return; 125262#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125307#factFINAL assume true; 125253#factEXIT >#66#return; 125251#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125252#factFINAL assume true; 125242#factEXIT >#74#return; 125243#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 125226#factENTRY ~n := #in~n; 125287#L25 assume !(~n <= 0); 125257#L26 call #t~ret0 := fact(~n - 1);< 125271#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125274#L25 assume !(~n <= 0); 125258#L26 call #t~ret0 := fact(~n - 1);< 125280#factENTRY ~n := #in~n; 125281#L25 assume ~n <= 0;#res := 1; 125293#factFINAL assume true; 125288#factEXIT >#66#return; 125284#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125285#factFINAL assume true; 125275#factEXIT >#66#return; 125262#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125307#factFINAL assume true; 125253#factEXIT >#66#return; 125251#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125252#factFINAL assume true; 125242#factEXIT >#76#return; 125239#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 125502#factENTRY ~n := #in~n; 125501#L25 assume !(~n <= 0); 125304#L26 call #t~ret0 := fact(~n - 1);< 125306#factENTRY ~n := #in~n; 125314#L25 assume ~n <= 0;#res := 1; 125309#factFINAL assume true; 125302#factEXIT >#66#return; 125294#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 125238#factFINAL assume true; 125241#factEXIT >#78#return; 125170#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; 125171#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 125183#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 125235#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 125189#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 125190#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 125453#L42-3 [2022-07-23 14:20:30,477 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:30,477 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 13 times [2022-07-23 14:20:30,478 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:30,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1907186151] [2022-07-23 14:20:30,478 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:30,478 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:30,486 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:30,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [560293328] [2022-07-23 14:20:30,487 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-23 14:20:30,487 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:30,487 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:30,489 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) [2022-07-23 14:20:30,503 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (136)] Waiting until timeout for monitored process [2022-07-23 14:20:30,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:30,663 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:30,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:30,789 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:30,790 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:30,790 INFO L85 PathProgramCache]: Analyzing trace with hash -313743638, now seen corresponding path program 13 times [2022-07-23 14:20:30,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:30,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [938906633] [2022-07-23 14:20:30,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:30,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:30,795 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:30,795 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [603583519] [2022-07-23 14:20:30,795 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-07-23 14:20:30,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:30,796 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:30,803 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) [2022-07-23 14:20:30,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (137)] Waiting until timeout for monitored process [2022-07-23 14:20:30,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-23 14:20:30,909 INFO L263 TraceCheckSpWp]: Trace formula consists of 488 conjuncts, 24 conjunts are in the unsatisfiable core [2022-07-23 14:20:30,912 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:31,144 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 1611 proven. 207 refuted. 0 times theorem prover too weak. 1105 trivial. 0 not checked. [2022-07-23 14:20:31,144 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:31,869 INFO L134 CoverageAnalysis]: Checked inductivity of 2923 backedges. 123 proven. 633 refuted. 0 times theorem prover too weak. 2167 trivial. 0 not checked. [2022-07-23 14:20:31,869 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:31,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [938906633] [2022-07-23 14:20:31,870 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:31,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [603583519] [2022-07-23 14:20:31,870 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [603583519] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:31,870 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:31,870 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 17] total 24 [2022-07-23 14:20:31,870 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409031213] [2022-07-23 14:20:31,870 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:31,871 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:31,871 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:31,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-07-23 14:20:31,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=475, Unknown=0, NotChecked=0, Total=552 [2022-07-23 14:20:31,872 INFO L87 Difference]: Start difference. First operand 2608 states and 3733 transitions. cyclomatic complexity: 1149 Second operand has 24 states, 18 states have (on average 3.2777777777777777) internal successors, (59), 22 states have internal predecessors, (59), 16 states have call successors, (32), 2 states have call predecessors, (32), 7 states have return successors, (33), 12 states have call predecessors, (33), 16 states have call successors, (33) [2022-07-23 14:20:33,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:33,533 INFO L93 Difference]: Finished difference Result 3480 states and 5130 transitions. [2022-07-23 14:20:33,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2022-07-23 14:20:33,534 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3480 states and 5130 transitions. [2022-07-23 14:20:33,548 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 195 [2022-07-23 14:20:33,572 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3480 states to 3468 states and 5118 transitions. [2022-07-23 14:20:33,573 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 364 [2022-07-23 14:20:33,573 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 364 [2022-07-23 14:20:33,573 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3468 states and 5118 transitions. [2022-07-23 14:20:33,574 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:33,574 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3468 states and 5118 transitions. [2022-07-23 14:20:33,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3468 states and 5118 transitions. [2022-07-23 14:20:33,623 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3468 to 2760. [2022-07-23 14:20:33,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2760 states, 1761 states have (on average 1.0766609880749574) internal successors, (1896), 1781 states have internal predecessors, (1896), 699 states have call successors, (729), 272 states have call predecessors, (729), 300 states have return successors, (1380), 706 states have call predecessors, (1380), 699 states have call successors, (1380) [2022-07-23 14:20:33,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2760 states to 2760 states and 4005 transitions. [2022-07-23 14:20:33,636 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2760 states and 4005 transitions. [2022-07-23 14:20:33,636 INFO L374 stractBuchiCegarLoop]: Abstraction has 2760 states and 4005 transitions. [2022-07-23 14:20:33,636 INFO L287 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2022-07-23 14:20:33,636 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2760 states and 4005 transitions. [2022-07-23 14:20:33,643 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 128 [2022-07-23 14:20:33,643 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:33,643 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:33,645 INFO L179 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] [2022-07-23 14:20:33,645 INFO L180 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] [2022-07-23 14:20:33,645 INFO L752 eck$LassoCheckResult]: Stem: 132690#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 132662#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; 132663#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 132689#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; 132676#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 132677#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133156#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; 133152#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133153#factENTRY ~n := #in~n; 133157#L25 assume ~n <= 0;#res := 1; 133155#factFINAL assume true; 133151#factEXIT >#68#return; 133147#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133148#factENTRY ~n := #in~n; 133154#L25 assume ~n <= 0;#res := 1; 133150#factFINAL assume true; 133146#factEXIT >#70#return; 133143#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133144#factENTRY ~n := #in~n; 133149#L25 assume ~n <= 0;#res := 1; 133145#factFINAL assume true; 133142#factEXIT >#72#return; 133141#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; 133139#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 133136#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133132#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133130#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; 133126#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133127#factENTRY ~n := #in~n; 133138#L25 assume !(~n <= 0); 133134#L26 call #t~ret0 := fact(~n - 1);< 133135#factENTRY ~n := #in~n; 133140#L25 assume ~n <= 0;#res := 1; 133137#factFINAL assume true; 133133#factEXIT >#66#return; 133131#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133129#factFINAL assume true; 133125#factEXIT >#74#return; 133121#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133122#factENTRY ~n := #in~n; 133128#L25 assume ~n <= 0;#res := 1; 133124#factFINAL assume true; 133120#factEXIT >#76#return; 133118#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133119#factENTRY ~n := #in~n; 133171#L25 assume !(~n <= 0); 133163#L26 call #t~ret0 := fact(~n - 1);< 133169#factENTRY ~n := #in~n; 133291#L25 assume ~n <= 0;#res := 1; 133290#factFINAL assume true; 133160#factEXIT >#66#return; 133159#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133158#factFINAL assume true; 133117#factEXIT >#78#return; 133115#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; 133112#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 133110#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133108#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133104#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; 133079#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133082#factENTRY ~n := #in~n; 133091#L25 assume !(~n <= 0); 133065#L26 call #t~ret0 := fact(~n - 1);< 133090#factENTRY ~n := #in~n; 133116#L25 assume !(~n <= 0); 133088#L26 call #t~ret0 := fact(~n - 1);< 133114#factENTRY ~n := #in~n; 133289#L25 assume ~n <= 0;#res := 1; 133288#factFINAL assume true; 133287#factEXIT >#66#return; 133286#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133285#factFINAL assume true; 133087#factEXIT >#66#return; 133086#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133084#factFINAL assume true; 133085#factEXIT >#74#return; 133078#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133082#factENTRY ~n := #in~n; 133091#L25 assume ~n <= 0;#res := 1; 133092#factFINAL assume true; 133076#factEXIT >#76#return; 132696#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133100#factENTRY ~n := #in~n; 133072#L25 assume !(~n <= 0); 133073#L26 call #t~ret0 := fact(~n - 1);< 133093#factENTRY ~n := #in~n; 133116#L25 assume !(~n <= 0); 133088#L26 call #t~ret0 := fact(~n - 1);< 133114#factENTRY ~n := #in~n; 133289#L25 assume ~n <= 0;#res := 1; 133288#factFINAL assume true; 133287#factEXIT >#66#return; 133286#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133285#factFINAL assume true; 133087#factEXIT >#66#return; 132694#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132697#factFINAL assume true; 133350#factEXIT >#78#return; 133351#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; 133604#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 133599#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133598#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 133597#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 133596#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 133594#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 133584#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; 133536#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133545#factENTRY ~n := #in~n; 133591#L25 assume !(~n <= 0); 133555#L26 call #t~ret0 := fact(~n - 1);< 133588#factENTRY ~n := #in~n; 133592#L25 assume ~n <= 0;#res := 1; 133589#factFINAL assume true; 133586#factEXIT >#66#return; 133585#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133583#factFINAL assume true; 133582#factEXIT >#68#return; 133575#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 133579#factENTRY ~n := #in~n; 133581#L25 assume ~n <= 0;#res := 1; 133580#factFINAL assume true; 133574#factEXIT >#70#return; 133577#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 133593#factENTRY ~n := #in~n; 133590#L25 assume !(~n <= 0); 133553#L26 call #t~ret0 := fact(~n - 1);< 133588#factENTRY ~n := #in~n; 133592#L25 assume ~n <= 0;#res := 1; 133589#factFINAL assume true; 133586#factEXIT >#66#return; 133587#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134461#factFINAL assume true; 134459#factEXIT >#72#return; 134458#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; 134457#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134456#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134455#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134454#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; 134396#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 134402#factENTRY ~n := #in~n; 134449#L25 assume !(~n <= 0); 134413#L26 call #t~ret0 := fact(~n - 1);< 134418#factENTRY ~n := #in~n; 134424#L25 assume ~n <= 0;#res := 1; 134419#factFINAL assume true; 134406#factEXIT >#66#return; 134405#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134403#factFINAL assume true; 134376#factEXIT >#68#return; 134276#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134278#factENTRY ~n := #in~n; 134295#L25 assume !(~n <= 0); 133432#L26 call #t~ret0 := fact(~n - 1);< 134288#factENTRY ~n := #in~n; 134296#L25 assume ~n <= 0;#res := 1; 134289#factFINAL assume true; 134282#factEXIT >#66#return; 134287#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134375#factFINAL assume true; 134272#factEXIT >#70#return; 134263#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134269#factENTRY ~n := #in~n; 134271#L25 assume ~n <= 0;#res := 1; 134270#factFINAL assume true; 134259#factEXIT >#72#return; 134265#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; 134732#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 134731#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 134730#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 134729#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; 133374#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 133378#factENTRY ~n := #in~n; 134339#L25 assume !(~n <= 0); 133440#L26 call #t~ret0 := fact(~n - 1);< 134288#factENTRY ~n := #in~n; 133518#L25 assume !(~n <= 0); 133434#L26 call #t~ret0 := fact(~n - 1);< 133449#factENTRY ~n := #in~n; 133519#L25 assume ~n <= 0;#res := 1; 133450#factFINAL assume true; 133451#factEXIT >#66#return; 133705#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133428#factFINAL assume true; 133441#factEXIT >#66#return; 133697#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134369#factFINAL assume true; 134367#factEXIT >#74#return; 134292#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 134343#factENTRY ~n := #in~n; 134344#L25 assume !(~n <= 0); 133430#L26 call #t~ret0 := fact(~n - 1);< 134288#factENTRY ~n := #in~n; 134296#L25 assume ~n <= 0;#res := 1; 134289#factFINAL assume true; 134282#factEXIT >#66#return; 134286#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134905#factFINAL assume true; 134879#factEXIT >#76#return; 134880#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 134846#factENTRY ~n := #in~n; 134910#L25 assume !(~n <= 0); 134889#L26 call #t~ret0 := fact(~n - 1);< 134900#factENTRY ~n := #in~n; 134901#L25 assume ~n <= 0;#res := 1; 134899#factFINAL assume true; 134888#factEXIT >#66#return; 134894#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 134934#factFINAL assume true; 134933#factEXIT >#78#return; 133345#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; 133337#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 133338#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 133332#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 133333#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 134463#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 132823#L42-3 [2022-07-23 14:20:33,645 INFO L754 eck$LassoCheckResult]: Loop: 132823#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132790#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; 132779#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 132782#factENTRY ~n := #in~n; 132799#L25 assume !(~n <= 0); 132794#L26 call #t~ret0 := fact(~n - 1);< 132798#factENTRY ~n := #in~n; 132811#L25 assume !(~n <= 0); 132793#L26 call #t~ret0 := fact(~n - 1);< 132808#factENTRY ~n := #in~n; 132811#L25 assume !(~n <= 0); 132793#L26 call #t~ret0 := fact(~n - 1);< 132808#factENTRY ~n := #in~n; 132814#L25 assume ~n <= 0;#res := 1; 132816#factFINAL assume true; 132813#factEXIT >#66#return; 132810#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132807#factFINAL assume true; 132805#factEXIT >#66#return; 132796#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132830#factFINAL assume true; 132792#factEXIT >#66#return; 132791#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132789#factFINAL assume true; 132787#factEXIT >#68#return; 132784#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132785#factENTRY ~n := #in~n; 132788#L25 assume ~n <= 0;#res := 1; 132786#factFINAL assume true; 132783#factEXIT >#70#return; 132780#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132782#factENTRY ~n := #in~n; 132799#L25 assume !(~n <= 0); 132794#L26 call #t~ret0 := fact(~n - 1);< 132798#factENTRY ~n := #in~n; 132811#L25 assume !(~n <= 0); 132793#L26 call #t~ret0 := fact(~n - 1);< 132808#factENTRY ~n := #in~n; 132811#L25 assume !(~n <= 0); 132793#L26 call #t~ret0 := fact(~n - 1);< 132808#factENTRY ~n := #in~n; 132814#L25 assume ~n <= 0;#res := 1; 132816#factFINAL assume true; 132813#factEXIT >#66#return; 132810#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132807#factFINAL assume true; 132805#factEXIT >#66#return; 132796#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132830#factFINAL assume true; 132792#factEXIT >#66#return; 132791#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132789#factFINAL assume true; 132787#factEXIT >#72#return; 132777#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; 132776#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 132775#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 132774#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132773#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; 132770#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 132772#factENTRY ~n := #in~n; 132771#L25 assume !(~n <= 0); 132760#L26 call #t~ret0 := fact(~n - 1);< 132769#factENTRY ~n := #in~n; 132768#L25 assume !(~n <= 0); 132757#L26 call #t~ret0 := fact(~n - 1);< 132761#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132890#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132905#factFINAL assume true; 132891#factEXIT >#66#return; 132887#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132885#factFINAL assume true; 132881#factEXIT >#68#return; 132867#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132880#factENTRY ~n := #in~n; 132876#L25 assume !(~n <= 0); 132872#L26 call #t~ret0 := fact(~n - 1);< 132874#factENTRY ~n := #in~n; 132878#L25 assume ~n <= 0;#res := 1; 132875#factFINAL assume true; 132871#factEXIT >#66#return; 132870#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132869#factFINAL assume true; 132866#factEXIT >#70#return; 132857#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132884#factENTRY ~n := #in~n; 132896#L25 assume !(~n <= 0); 132755#L26 call #t~ret0 := fact(~n - 1);< 132751#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132886#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132883#factFINAL assume true; 132856#factEXIT >#72#return; 132864#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; 133050#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 132906#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 132904#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132903#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; 132849#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 132853#factENTRY ~n := #in~n; 132855#L25 assume !(~n <= 0); 132758#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132890#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132905#factFINAL assume true; 132891#factEXIT >#66#return; 132887#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132885#factFINAL assume true; 132881#factEXIT >#68#return; 132861#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132865#factENTRY ~n := #in~n; 132877#L25 assume !(~n <= 0); 132758#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132878#L25 assume ~n <= 0;#res := 1; 132875#factFINAL assume true; 132871#factEXIT >#66#return; 132870#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132869#factFINAL assume true; 132866#factEXIT >#70#return; 132858#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132865#factENTRY ~n := #in~n; 132877#L25 assume !(~n <= 0); 132758#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132878#L25 assume ~n <= 0;#res := 1; 132875#factFINAL assume true; 132871#factEXIT >#66#return; 132870#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132869#factFINAL assume true; 132866#factEXIT >#72#return; 132851#L30-3 binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; 132969#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 132967#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 132966#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132964#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; 132847#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 132853#factENTRY ~n := #in~n; 132855#L25 assume !(~n <= 0); 132758#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132890#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132905#factFINAL assume true; 132891#factEXIT >#66#return; 132887#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132885#factFINAL assume true; 132881#factEXIT >#68#return; 132862#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132865#factENTRY ~n := #in~n; 132877#L25 assume !(~n <= 0); 132758#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132890#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132905#factFINAL assume true; 132891#factEXIT >#66#return; 132887#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132885#factFINAL assume true; 132881#factEXIT >#70#return; 132846#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132853#factENTRY ~n := #in~n; 132855#L25 assume ~n <= 0;#res := 1; 132854#factFINAL assume true; 132844#factEXIT >#72#return; 132852#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; 132840#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 132841#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 132837#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 132835#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; 132624#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 132625#factENTRY ~n := #in~n; 132824#L25 assume !(~n <= 0); 132740#L26 call #t~ret0 := fact(~n - 1);< 132741#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132890#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132905#factFINAL assume true; 132891#factEXIT >#66#return; 132728#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132729#factFINAL assume true; 132719#factEXIT >#74#return; 132710#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 132711#factENTRY ~n := #in~n; 132765#L25 assume !(~n <= 0); 132750#L26 call #t~ret0 := fact(~n - 1);< 132751#factENTRY ~n := #in~n; 132800#L25 assume !(~n <= 0); 132756#L26 call #t~ret0 := fact(~n - 1);< 132767#factENTRY ~n := #in~n; 132829#L25 assume ~n <= 0;#res := 1; 132801#factFINAL assume true; 132802#factEXIT >#66#return; 132898#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132752#factFINAL assume true; 132759#factEXIT >#66#return; 132888#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 132745#factFINAL assume true; 132746#factEXIT >#76#return; 132657#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 132656#factENTRY ~n := #in~n; 132658#L25 assume !(~n <= 0); 132667#L26 call #t~ret0 := fact(~n - 1);< 132668#factENTRY ~n := #in~n; 133006#L25 assume ~n <= 0;#res := 1; 133004#factFINAL assume true; 133001#factEXIT >#66#return; 133003#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 133024#factFINAL assume true; 132908#factEXIT >#78#return; 132664#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; 132665#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 132673#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 132716#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 132680#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 132681#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 132823#L42-3 [2022-07-23 14:20:33,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:33,646 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 14 times [2022-07-23 14:20:33,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:33,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1437948673] [2022-07-23 14:20:33,646 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:33,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:33,653 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:33,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1731244844] [2022-07-23 14:20:33,653 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:20:33,654 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:33,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:33,659 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) [2022-07-23 14:20:33,686 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (138)] Waiting until timeout for monitored process [2022-07-23 14:20:33,851 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:20:33,851 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:20:33,851 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:33,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:33,953 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:33,954 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:33,954 INFO L85 PathProgramCache]: Analyzing trace with hash 1530382553, now seen corresponding path program 14 times [2022-07-23 14:20:33,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:33,954 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [258089936] [2022-07-23 14:20:33,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:33,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:33,961 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:33,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2111296402] [2022-07-23 14:20:33,961 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-07-23 14:20:33,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:33,962 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:33,963 INFO L229 MonitoredProcess]: Starting monitored process 139 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:33,982 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (139)] Waiting until timeout for monitored process [2022-07-23 14:20:34,075 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-07-23 14:20:34,075 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:34,077 INFO L263 TraceCheckSpWp]: Trace formula consists of 611 conjuncts, 27 conjunts are in the unsatisfiable core [2022-07-23 14:20:34,079 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:34,346 INFO L134 CoverageAnalysis]: Checked inductivity of 4661 backedges. 2543 proven. 499 refuted. 0 times theorem prover too weak. 1619 trivial. 0 not checked. [2022-07-23 14:20:34,346 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:35,393 INFO L134 CoverageAnalysis]: Checked inductivity of 4661 backedges. 210 proven. 1240 refuted. 0 times theorem prover too weak. 3211 trivial. 0 not checked. [2022-07-23 14:20:35,393 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:35,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [258089936] [2022-07-23 14:20:35,393 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:35,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2111296402] [2022-07-23 14:20:35,393 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2111296402] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:35,393 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:35,394 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 22] total 26 [2022-07-23 14:20:35,394 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [430241839] [2022-07-23 14:20:35,394 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:35,394 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:35,394 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:35,395 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-07-23 14:20:35,395 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=94, Invalid=556, Unknown=0, NotChecked=0, Total=650 [2022-07-23 14:20:35,395 INFO L87 Difference]: Start difference. First operand 2760 states and 4005 transitions. cyclomatic complexity: 1269 Second operand has 26 states, 21 states have (on average 3.1904761904761907) internal successors, (67), 24 states have internal predecessors, (67), 16 states have call successors, (33), 2 states have call predecessors, (33), 9 states have return successors, (36), 13 states have call predecessors, (36), 16 states have call successors, (36) [2022-07-23 14:20:37,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:37,069 INFO L93 Difference]: Finished difference Result 3380 states and 5218 transitions. [2022-07-23 14:20:37,070 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-07-23 14:20:37,071 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3380 states and 5218 transitions. [2022-07-23 14:20:37,085 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 112 [2022-07-23 14:20:37,112 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3380 states to 3311 states and 5127 transitions. [2022-07-23 14:20:37,112 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 364 [2022-07-23 14:20:37,112 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 364 [2022-07-23 14:20:37,112 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3311 states and 5127 transitions. [2022-07-23 14:20:37,113 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:37,113 INFO L369 hiAutomatonCegarLoop]: Abstraction has 3311 states and 5127 transitions. [2022-07-23 14:20:37,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3311 states and 5127 transitions. [2022-07-23 14:20:37,189 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3311 to 2323. [2022-07-23 14:20:37,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2323 states, 1501 states have (on average 1.0719520319786808) internal successors, (1609), 1521 states have internal predecessors, (1609), 547 states have call successors, (571), 256 states have call predecessors, (571), 275 states have return successors, (1044), 545 states have call predecessors, (1044), 547 states have call successors, (1044) [2022-07-23 14:20:37,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2323 states to 2323 states and 3224 transitions. [2022-07-23 14:20:37,199 INFO L392 hiAutomatonCegarLoop]: Abstraction has 2323 states and 3224 transitions. [2022-07-23 14:20:37,199 INFO L374 stractBuchiCegarLoop]: Abstraction has 2323 states and 3224 transitions. [2022-07-23 14:20:37,199 INFO L287 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2022-07-23 14:20:37,199 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2323 states and 3224 transitions. [2022-07-23 14:20:37,205 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 90 [2022-07-23 14:20:37,205 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:37,205 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:37,206 INFO L179 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] [2022-07-23 14:20:37,206 INFO L180 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] [2022-07-23 14:20:37,207 INFO L752 eck$LassoCheckResult]: Stem: 140566#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 140538#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; 140539#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 140565#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; 140551#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 140552#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140956#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; 140952#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140953#factENTRY ~n := #in~n; 140957#L25 assume ~n <= 0;#res := 1; 140955#factFINAL assume true; 140951#factEXIT >#68#return; 140947#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140948#factENTRY ~n := #in~n; 140954#L25 assume ~n <= 0;#res := 1; 140950#factFINAL assume true; 140946#factEXIT >#70#return; 140943#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140944#factENTRY ~n := #in~n; 140949#L25 assume ~n <= 0;#res := 1; 140945#factFINAL assume true; 140942#factEXIT >#72#return; 140941#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; 140939#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 140936#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140932#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140930#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; 140926#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140927#factENTRY ~n := #in~n; 140938#L25 assume !(~n <= 0); 140934#L26 call #t~ret0 := fact(~n - 1);< 140935#factENTRY ~n := #in~n; 140940#L25 assume ~n <= 0;#res := 1; 140937#factFINAL assume true; 140933#factEXIT >#66#return; 140931#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140929#factFINAL assume true; 140925#factEXIT >#74#return; 140921#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140923#factENTRY ~n := #in~n; 140928#L25 assume ~n <= 0;#res := 1; 140924#factFINAL assume true; 140920#factEXIT >#76#return; 140918#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140919#factENTRY ~n := #in~n; 141098#L25 assume !(~n <= 0); 141085#L26 call #t~ret0 := fact(~n - 1);< 141097#factENTRY ~n := #in~n; 141130#L25 assume ~n <= 0;#res := 1; 141129#factFINAL assume true; 141127#factEXIT >#66#return; 141091#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141080#factFINAL assume true; 140917#factEXIT >#78#return; 140916#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; 140915#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 140913#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140911#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140908#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; 140885#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140905#factENTRY ~n := #in~n; 141004#L25 assume !(~n <= 0); 140869#L26 call #t~ret0 := fact(~n - 1);< 140888#factENTRY ~n := #in~n; 140900#L25 assume !(~n <= 0); 140881#L26 call #t~ret0 := fact(~n - 1);< 140898#factENTRY ~n := #in~n; 140902#L25 assume ~n <= 0;#res := 1; 140899#factFINAL assume true; 140896#factEXIT >#66#return; 140897#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140914#factFINAL assume true; 140912#factEXIT >#66#return; 140910#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140907#factFINAL assume true; 140906#factEXIT >#74#return; 140883#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140905#factENTRY ~n := #in~n; 141004#L25 assume ~n <= 0;#res := 1; 141003#factFINAL assume true; 141002#factEXIT >#76#return; 140571#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140903#factENTRY ~n := #in~n; 140901#L25 assume !(~n <= 0); 140874#L26 call #t~ret0 := fact(~n - 1);< 140875#factENTRY ~n := #in~n; 140900#L25 assume !(~n <= 0); 140881#L26 call #t~ret0 := fact(~n - 1);< 140898#factENTRY ~n := #in~n; 140902#L25 assume ~n <= 0;#res := 1; 140899#factFINAL assume true; 140896#factEXIT >#66#return; 140897#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140914#factFINAL assume true; 140912#factEXIT >#66#return; 140570#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140573#factFINAL assume true; 141144#factEXIT >#78#return; 141141#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; 141139#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 141137#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 141135#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 140890#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 140553#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 140554#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 141812#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; 141776#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 141779#factENTRY ~n := #in~n; 141808#L25 assume !(~n <= 0); 141781#L26 call #t~ret0 := fact(~n - 1);< 141784#factENTRY ~n := #in~n; 141797#L25 assume ~n <= 0;#res := 1; 141795#factFINAL assume true; 141780#factEXIT >#66#return; 141783#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141791#factFINAL assume true; 141775#factEXIT >#68#return; 141770#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 141772#factENTRY ~n := #in~n; 141786#L25 assume ~n <= 0;#res := 1; 141774#factFINAL assume true; 141767#factEXIT >#70#return; 141762#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 141765#factENTRY ~n := #in~n; 141785#L25 assume !(~n <= 0); 141782#L26 call #t~ret0 := fact(~n - 1);< 141784#factENTRY ~n := #in~n; 141797#L25 assume ~n <= 0;#res := 1; 141795#factFINAL assume true; 141780#factEXIT >#66#return; 141773#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141766#factFINAL assume true; 141761#factEXIT >#72#return; 141760#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; 141758#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 141755#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 141741#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 141739#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; 141715#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 141735#factENTRY ~n := #in~n; 142102#L25 assume !(~n <= 0); 141745#L26 call #t~ret0 := fact(~n - 1);< 141754#factENTRY ~n := #in~n; 141759#L25 assume ~n <= 0;#res := 1; 141756#factFINAL assume true; 141742#factEXIT >#66#return; 141740#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141736#factFINAL assume true; 141714#factEXIT >#68#return; 141709#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 141712#factENTRY ~n := #in~n; 141711#L25 assume !(~n <= 0); 141690#L26 call #t~ret0 := fact(~n - 1);< 141710#factENTRY ~n := #in~n; 142572#L25 assume ~n <= 0;#res := 1; 142569#factFINAL assume true; 142561#factEXIT >#66#return; 142563#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 142720#factFINAL assume true; 142719#factEXIT >#70#return; 142675#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 142684#factENTRY ~n := #in~n; 142687#L25 assume ~n <= 0;#res := 1; 142686#factFINAL assume true; 142674#factEXIT >#72#return; 142682#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; 142718#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 142716#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 142714#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 142710#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; 141193#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 141201#factENTRY ~n := #in~n; 142575#L25 assume !(~n <= 0); 141683#L26 call #t~ret0 := fact(~n - 1);< 141710#factENTRY ~n := #in~n; 141706#L25 assume !(~n <= 0); 141692#L26 call #t~ret0 := fact(~n - 1);< 141704#factENTRY ~n := #in~n; 141707#L25 assume ~n <= 0;#res := 1; 141705#factFINAL assume true; 141703#factEXIT >#66#return; 141702#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141701#factFINAL assume true; 141680#factEXIT >#66#return; 141696#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 141192#factFINAL assume true; 141200#factEXIT >#74#return; 142459#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 142500#factENTRY ~n := #in~n; 142656#L25 assume !(~n <= 0); 141686#L26 call #t~ret0 := fact(~n - 1);< 141710#factENTRY ~n := #in~n; 142572#L25 assume ~n <= 0;#res := 1; 142569#factFINAL assume true; 142561#factEXIT >#66#return; 142565#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 142728#factFINAL assume true; 142499#factEXIT >#76#return; 142454#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 142448#factENTRY ~n := #in~n; 142479#L25 assume !(~n <= 0); 142432#L26 call #t~ret0 := fact(~n - 1);< 142440#factENTRY ~n := #in~n; 142442#L25 assume ~n <= 0;#res := 1; 142438#factFINAL assume true; 142429#factEXIT >#66#return; 142433#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 142467#factFINAL assume true; 142452#factEXIT >#78#return; 141142#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; 141140#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 141138#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 141136#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 140563#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 140564#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 140777#L42-3 [2022-07-23 14:20:37,207 INFO L754 eck$LassoCheckResult]: Loop: 140777#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140766#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; 140758#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140761#factENTRY ~n := #in~n; 140796#L25 assume !(~n <= 0); 140792#L26 call #t~ret0 := fact(~n - 1);< 140545#factENTRY ~n := #in~n; 140816#L25 assume !(~n <= 0); 140793#L26 call #t~ret0 := fact(~n - 1);< 140815#factENTRY ~n := #in~n; 140816#L25 assume !(~n <= 0); 140793#L26 call #t~ret0 := fact(~n - 1);< 140815#factENTRY ~n := #in~n; 140817#L25 assume ~n <= 0;#res := 1; 140830#factFINAL assume true; 140827#factEXIT >#66#return; 140823#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140822#factFINAL assume true; 140819#factEXIT >#66#return; 140795#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140814#factFINAL assume true; 140791#factEXIT >#66#return; 140790#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140778#factFINAL assume true; 140757#factEXIT >#68#return; 140760#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140763#factENTRY ~n := #in~n; 140765#L25 assume ~n <= 0;#res := 1; 140764#factFINAL assume true; 140762#factEXIT >#70#return; 140759#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140761#factENTRY ~n := #in~n; 140796#L25 assume !(~n <= 0); 140792#L26 call #t~ret0 := fact(~n - 1);< 140545#factENTRY ~n := #in~n; 140816#L25 assume !(~n <= 0); 140793#L26 call #t~ret0 := fact(~n - 1);< 140815#factENTRY ~n := #in~n; 140816#L25 assume !(~n <= 0); 140793#L26 call #t~ret0 := fact(~n - 1);< 140815#factENTRY ~n := #in~n; 140817#L25 assume ~n <= 0;#res := 1; 140830#factFINAL assume true; 140827#factEXIT >#66#return; 140823#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140822#factFINAL assume true; 140819#factEXIT >#66#return; 140795#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140814#factFINAL assume true; 140791#factEXIT >#66#return; 140790#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140778#factFINAL assume true; 140757#factEXIT >#72#return; 140756#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; 140754#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 140751#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140747#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140740#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; 140718#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140736#factENTRY ~n := #in~n; 140733#L25 assume !(~n <= 0); 140714#L26 call #t~ret0 := fact(~n - 1);< 140730#factENTRY ~n := #in~n; 140727#L25 assume !(~n <= 0); 140702#L26 call #t~ret0 := fact(~n - 1);< 140715#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140707#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140812#factFINAL assume true; 140809#factEXIT >#66#return; 140808#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140806#factFINAL assume true; 140717#factEXIT >#68#return; 140720#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140738#factENTRY ~n := #in~n; 140755#L25 assume !(~n <= 0); 140742#L26 call #t~ret0 := fact(~n - 1);< 140745#factENTRY ~n := #in~n; 140752#L25 assume ~n <= 0;#res := 1; 140748#factFINAL assume true; 140741#factEXIT >#66#return; 140739#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140737#factFINAL assume true; 140734#factEXIT >#70#return; 140664#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140669#factENTRY ~n := #in~n; 140807#L25 assume !(~n <= 0); 140699#L26 call #t~ret0 := fact(~n - 1);< 140709#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140772#factFINAL assume true; 140662#factEXIT >#72#return; 140668#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; 140785#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 140783#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140782#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140746#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; 140625#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140628#factENTRY ~n := #in~n; 140646#L25 assume !(~n <= 0); 140647#L26 call #t~ret0 := fact(~n - 1);< 140744#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140707#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140812#factFINAL assume true; 140809#factEXIT >#66#return; 140808#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140806#factFINAL assume true; 140717#factEXIT >#68#return; 140667#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140669#factENTRY ~n := #in~n; 140807#L25 assume !(~n <= 0); 140699#L26 call #t~ret0 := fact(~n - 1);< 140709#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140772#factFINAL assume true; 140662#factEXIT >#70#return; 140666#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140735#factENTRY ~n := #in~n; 140750#L25 assume !(~n <= 0); 140647#L26 call #t~ret0 := fact(~n - 1);< 140744#factENTRY ~n := #in~n; 140752#L25 assume ~n <= 0;#res := 1; 140748#factFINAL assume true; 140741#factEXIT >#66#return; 140739#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140737#factFINAL assume true; 140734#factEXIT >#72#return; 140732#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; 140731#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 140729#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140726#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140724#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; 140603#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140628#factENTRY ~n := #in~n; 140646#L25 assume !(~n <= 0); 140647#L26 call #t~ret0 := fact(~n - 1);< 140744#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140707#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140812#factFINAL assume true; 140809#factEXIT >#66#return; 140808#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140806#factFINAL assume true; 140717#factEXIT >#68#return; 140665#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140669#factENTRY ~n := #in~n; 140807#L25 assume !(~n <= 0); 140699#L26 call #t~ret0 := fact(~n - 1);< 140709#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140706#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140772#factFINAL assume true; 140662#factEXIT >#70#return; 140627#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140628#factENTRY ~n := #in~n; 140646#L25 assume ~n <= 0;#res := 1; 140645#factFINAL assume true; 140624#factEXIT >#72#return; 140613#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; 140610#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 140607#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140605#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 140602#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; 140490#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 140491#factENTRY ~n := #in~n; 140775#L25 assume !(~n <= 0); 140705#L26 call #t~ret0 := fact(~n - 1);< 140744#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140707#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140812#factFINAL assume true; 140809#factEXIT >#66#return; 140811#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140831#factFINAL assume true; 140595#factEXIT >#74#return; 140585#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 140586#factENTRY ~n := #in~n; 140711#L25 assume !(~n <= 0); 140703#L26 call #t~ret0 := fact(~n - 1);< 140709#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140723#L25 assume !(~n <= 0); 140700#L26 call #t~ret0 := fact(~n - 1);< 140722#factENTRY ~n := #in~n; 140728#L25 assume ~n <= 0;#res := 1; 140725#factFINAL assume true; 140721#factEXIT >#66#return; 140716#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140713#factFINAL assume true; 140698#factEXIT >#66#return; 140707#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140812#factFINAL assume true; 140809#factEXIT >#66#return; 140811#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140831#factFINAL assume true; 140595#factEXIT >#76#return; 140596#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 140619#factENTRY ~n := #in~n; 140771#L25 assume !(~n <= 0); 140578#L26 call #t~ret0 := fact(~n - 1);< 140687#factENTRY ~n := #in~n; 140575#L25 assume ~n <= 0;#res := 1; 140579#factFINAL assume true; 140847#factEXIT >#66#return; 140680#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 140845#factFINAL assume true; 140623#factEXIT >#78#return; 140540#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; 140541#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 140549#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 140594#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 140561#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 140562#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 140777#L42-3 [2022-07-23 14:20:37,208 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:37,208 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 15 times [2022-07-23 14:20:37,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:37,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974626228] [2022-07-23 14:20:37,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:37,208 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:37,215 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:37,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1844218257] [2022-07-23 14:20:37,215 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:20:37,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:37,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:37,221 INFO L229 MonitoredProcess]: Starting monitored process 140 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:37,222 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (140)] Waiting until timeout for monitored process [2022-07-23 14:20:37,429 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 23 check-sat command(s) [2022-07-23 14:20:37,429 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:20:37,429 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:37,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:37,512 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:37,512 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:37,512 INFO L85 PathProgramCache]: Analyzing trace with hash -346612703, now seen corresponding path program 15 times [2022-07-23 14:20:37,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:37,512 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1561084072] [2022-07-23 14:20:37,512 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:37,512 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:37,519 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:37,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [730610967] [2022-07-23 14:20:37,520 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-07-23 14:20:37,520 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:37,520 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:37,527 INFO L229 MonitoredProcess]: Starting monitored process 141 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:37,528 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (141)] Waiting until timeout for monitored process [2022-07-23 14:20:37,658 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2022-07-23 14:20:37,658 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:37,659 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 23 conjunts are in the unsatisfiable core [2022-07-23 14:20:37,661 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:37,899 INFO L134 CoverageAnalysis]: Checked inductivity of 4895 backedges. 723 proven. 321 refuted. 0 times theorem prover too weak. 3851 trivial. 0 not checked. [2022-07-23 14:20:37,900 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:38,882 INFO L134 CoverageAnalysis]: Checked inductivity of 4895 backedges. 723 proven. 329 refuted. 0 times theorem prover too weak. 3843 trivial. 0 not checked. [2022-07-23 14:20:38,882 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:38,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1561084072] [2022-07-23 14:20:38,882 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:38,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [730610967] [2022-07-23 14:20:38,883 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [730610967] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:38,883 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:38,883 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 20] total 29 [2022-07-23 14:20:38,883 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [410502869] [2022-07-23 14:20:38,883 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:38,883 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:38,883 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:38,884 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-07-23 14:20:38,884 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=764, Unknown=0, NotChecked=0, Total=870 [2022-07-23 14:20:38,884 INFO L87 Difference]: Start difference. First operand 2323 states and 3224 transitions. cyclomatic complexity: 925 Second operand has 30 states, 25 states have (on average 2.52) internal successors, (63), 28 states have internal predecessors, (63), 16 states have call successors, (23), 1 states have call predecessors, (23), 7 states have return successors, (25), 12 states have call predecessors, (25), 16 states have call successors, (25) [2022-07-23 14:20:41,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:41,183 INFO L93 Difference]: Finished difference Result 4429 states and 7105 transitions. [2022-07-23 14:20:41,184 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-07-23 14:20:41,185 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4429 states and 7105 transitions. [2022-07-23 14:20:41,206 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 334 [2022-07-23 14:20:41,263 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4429 states to 4362 states and 6970 transitions. [2022-07-23 14:20:41,263 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 465 [2022-07-23 14:20:41,264 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 465 [2022-07-23 14:20:41,264 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4362 states and 6970 transitions. [2022-07-23 14:20:41,264 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:41,264 INFO L369 hiAutomatonCegarLoop]: Abstraction has 4362 states and 6970 transitions. [2022-07-23 14:20:41,267 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4362 states and 6970 transitions. [2022-07-23 14:20:41,336 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4362 to 3097. [2022-07-23 14:20:41,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3097 states, 1972 states have (on average 1.0704868154158216) internal successors, (2111), 2001 states have internal predecessors, (2111), 837 states have call successors, (868), 256 states have call predecessors, (868), 288 states have return successors, (1642), 839 states have call predecessors, (1642), 837 states have call successors, (1642) [2022-07-23 14:20:41,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3097 states to 3097 states and 4621 transitions. [2022-07-23 14:20:41,352 INFO L392 hiAutomatonCegarLoop]: Abstraction has 3097 states and 4621 transitions. [2022-07-23 14:20:41,352 INFO L374 stractBuchiCegarLoop]: Abstraction has 3097 states and 4621 transitions. [2022-07-23 14:20:41,352 INFO L287 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2022-07-23 14:20:41,352 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3097 states and 4621 transitions. [2022-07-23 14:20:41,360 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 132 [2022-07-23 14:20:41,360 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:41,360 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:41,362 INFO L179 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] [2022-07-23 14:20:41,362 INFO L180 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] [2022-07-23 14:20:41,362 INFO L752 eck$LassoCheckResult]: Stem: 149086#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 149056#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; 149057#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 149085#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; 149072#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 149073#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149583#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; 149563#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149564#factENTRY ~n := #in~n; 149568#L25 assume ~n <= 0;#res := 1; 149566#factFINAL assume true; 149562#factEXIT >#68#return; 149553#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149554#factENTRY ~n := #in~n; 149560#L25 assume ~n <= 0;#res := 1; 149558#factFINAL assume true; 149552#factEXIT >#70#return; 149538#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149539#factENTRY ~n := #in~n; 149541#L25 assume ~n <= 0;#res := 1; 149540#factFINAL assume true; 149537#factEXIT >#72#return; 149536#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; 149535#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149533#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149531#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149530#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; 149519#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149520#factENTRY ~n := #in~n; 149559#L25 assume !(~n <= 0); 149556#L26 call #t~ret0 := fact(~n - 1);< 149557#factENTRY ~n := #in~n; 149567#L25 assume ~n <= 0;#res := 1; 149565#factFINAL assume true; 149555#factEXIT >#66#return; 149551#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149529#factFINAL assume true; 149518#factEXIT >#74#return; 149513#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149514#factENTRY ~n := #in~n; 149524#L25 assume ~n <= 0;#res := 1; 149517#factFINAL assume true; 149512#factEXIT >#76#return; 149509#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149510#factENTRY ~n := #in~n; 149601#L25 assume !(~n <= 0); 149596#L26 call #t~ret0 := fact(~n - 1);< 149600#factENTRY ~n := #in~n; 149684#L25 assume ~n <= 0;#res := 1; 149676#factFINAL assume true; 149592#factEXIT >#66#return; 149589#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149586#factFINAL assume true; 149508#factEXIT >#78#return; 149506#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; 149504#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 149503#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149501#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149496#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; 149463#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149478#factENTRY ~n := #in~n; 149461#L25 assume !(~n <= 0); 149447#L26 call #t~ret0 := fact(~n - 1);< 149472#factENTRY ~n := #in~n; 149468#L25 assume !(~n <= 0); 149458#L26 call #t~ret0 := fact(~n - 1);< 149460#factENTRY ~n := #in~n; 149484#L25 assume ~n <= 0;#res := 1; 149483#factFINAL assume true; 149481#factEXIT >#66#return; 149482#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149502#factFINAL assume true; 149499#factEXIT >#66#return; 149498#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149488#factFINAL assume true; 149489#factEXIT >#74#return; 149466#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149478#factENTRY ~n := #in~n; 149461#L25 assume ~n <= 0;#res := 1; 149467#factFINAL assume true; 149479#factEXIT >#76#return; 149091#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149476#factENTRY ~n := #in~n; 149475#L25 assume !(~n <= 0); 149452#L26 call #t~ret0 := fact(~n - 1);< 149453#factENTRY ~n := #in~n; 149468#L25 assume !(~n <= 0); 149458#L26 call #t~ret0 := fact(~n - 1);< 149460#factENTRY ~n := #in~n; 149484#L25 assume ~n <= 0;#res := 1; 149483#factFINAL assume true; 149481#factEXIT >#66#return; 149482#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149502#factFINAL assume true; 149499#factEXIT >#66#return; 149089#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149092#factFINAL assume true; 149721#factEXIT >#78#return; 149720#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; 150084#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 150036#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 150035#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 150034#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 150032#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 150030#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 150028#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; 149907#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149911#factENTRY ~n := #in~n; 150038#L25 assume !(~n <= 0); 149921#L26 call #t~ret0 := fact(~n - 1);< 150021#factENTRY ~n := #in~n; 150046#L25 assume ~n <= 0;#res := 1; 150042#factFINAL assume true; 150019#factEXIT >#66#return; 150020#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 150024#factFINAL assume true; 150018#factEXIT >#68#return; 150011#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 150015#factENTRY ~n := #in~n; 150022#L25 assume ~n <= 0;#res := 1; 150017#factFINAL assume true; 150010#factEXIT >#70#return; 150005#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 150008#factENTRY ~n := #in~n; 150044#L25 assume !(~n <= 0); 149918#L26 call #t~ret0 := fact(~n - 1);< 150021#factENTRY ~n := #in~n; 150046#L25 assume ~n <= 0;#res := 1; 150042#factFINAL assume true; 150019#factEXIT >#66#return; 150016#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 150009#factFINAL assume true; 150004#factEXIT >#72#return; 150003#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; 150001#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149998#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149984#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149982#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; 149935#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149979#factENTRY ~n := #in~n; 150308#L25 assume !(~n <= 0); 149990#L26 call #t~ret0 := fact(~n - 1);< 149997#factENTRY ~n := #in~n; 150002#L25 assume ~n <= 0;#res := 1; 149999#factFINAL assume true; 149985#factEXIT >#66#return; 149983#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149980#factFINAL assume true; 149930#factEXIT >#68#return; 149926#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149928#factENTRY ~n := #in~n; 149927#L25 assume !(~n <= 0); 149858#L26 call #t~ret0 := fact(~n - 1);< 149874#factENTRY ~n := #in~n; 150189#L25 assume ~n <= 0;#res := 1; 150184#factFINAL assume true; 150174#factEXIT >#66#return; 150177#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 151609#factFINAL assume true; 151607#factEXIT >#70#return; 151323#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 151332#factENTRY ~n := #in~n; 151334#L25 assume ~n <= 0;#res := 1; 151333#factFINAL assume true; 151318#factEXIT >#72#return; 151330#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; 151662#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 151661#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 150240#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 150241#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; 149816#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149837#factENTRY ~n := #in~n; 149891#L25 assume !(~n <= 0); 149865#L26 call #t~ret0 := fact(~n - 1);< 149874#factENTRY ~n := #in~n; 149888#L25 assume !(~n <= 0); 149861#L26 call #t~ret0 := fact(~n - 1);< 149886#factENTRY ~n := #in~n; 149889#L25 assume ~n <= 0;#res := 1; 149887#factFINAL assume true; 149885#factEXIT >#66#return; 149884#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149881#factFINAL assume true; 149875#factEXIT >#66#return; 149851#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149838#factFINAL assume true; 149804#factEXIT >#74#return; 149830#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 150233#factENTRY ~n := #in~n; 150232#L25 assume !(~n <= 0); 149862#L26 call #t~ret0 := fact(~n - 1);< 149874#factENTRY ~n := #in~n; 150189#L25 assume ~n <= 0;#res := 1; 150184#factFINAL assume true; 150174#factEXIT >#66#return; 150178#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 151670#factFINAL assume true; 151646#factEXIT >#76#return; 149785#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 150089#factENTRY ~n := #in~n; 150090#L25 assume !(~n <= 0); 149735#L26 call #t~ret0 := fact(~n - 1);< 149746#factENTRY ~n := #in~n; 149764#L25 assume ~n <= 0;#res := 1; 149765#factFINAL assume true; 149728#factEXIT >#66#return; 149743#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 151610#factFINAL assume true; 151611#factEXIT >#78#return; 151581#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; 151459#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 150047#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 150043#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 150031#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 150029#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 149181#L42-3 [2022-07-23 14:20:41,363 INFO L754 eck$LassoCheckResult]: Loop: 149181#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149162#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; 149158#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149159#factENTRY ~n := #in~n; 149220#L25 assume !(~n <= 0); 149206#L26 call #t~ret0 := fact(~n - 1);< 149211#factENTRY ~n := #in~n; 149225#L25 assume !(~n <= 0); 149207#L26 call #t~ret0 := fact(~n - 1);< 149222#factENTRY ~n := #in~n; 149225#L25 assume !(~n <= 0); 149207#L26 call #t~ret0 := fact(~n - 1);< 149222#factENTRY ~n := #in~n; 149228#L25 assume ~n <= 0;#res := 1; 149229#factFINAL assume true; 149227#factEXIT >#66#return; 149224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149221#factFINAL assume true; 149218#factEXIT >#66#return; 149209#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149254#factFINAL assume true; 149205#factEXIT >#66#return; 149204#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149198#factFINAL assume true; 149195#factEXIT >#68#return; 149197#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149203#factENTRY ~n := #in~n; 149215#L25 assume ~n <= 0;#res := 1; 149214#factFINAL assume true; 149202#factEXIT >#70#return; 149196#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149159#factENTRY ~n := #in~n; 149220#L25 assume !(~n <= 0); 149206#L26 call #t~ret0 := fact(~n - 1);< 149211#factENTRY ~n := #in~n; 149225#L25 assume !(~n <= 0); 149207#L26 call #t~ret0 := fact(~n - 1);< 149222#factENTRY ~n := #in~n; 149225#L25 assume !(~n <= 0); 149207#L26 call #t~ret0 := fact(~n - 1);< 149222#factENTRY ~n := #in~n; 149228#L25 assume ~n <= 0;#res := 1; 149229#factFINAL assume true; 149227#factEXIT >#66#return; 149224#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149221#factFINAL assume true; 149218#factEXIT >#66#return; 149209#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149254#factFINAL assume true; 149205#factEXIT >#66#return; 149204#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149198#factFINAL assume true; 149195#factEXIT >#72#return; 149194#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; 149193#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149192#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149189#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149186#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; 149178#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149180#factENTRY ~n := #in~n; 149267#L25 assume !(~n <= 0); 149148#L26 call #t~ret0 := fact(~n - 1);< 149155#factENTRY ~n := #in~n; 149156#L25 assume !(~n <= 0); 149141#L26 call #t~ret0 := fact(~n - 1);< 149150#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149182#factFINAL assume true; 149163#factEXIT >#68#return; 149063#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149157#factENTRY ~n := #in~n; 149154#L25 assume !(~n <= 0); 149062#L26 call #t~ret0 := fact(~n - 1);< 149064#factENTRY ~n := #in~n; 149275#L25 assume ~n <= 0;#res := 1; 149321#factFINAL assume true; 149319#factEXIT >#66#return; 149318#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149317#factFINAL assume true; 149315#factEXIT >#70#return; 149167#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149184#factENTRY ~n := #in~n; 149271#L25 assume !(~n <= 0); 149146#L26 call #t~ret0 := fact(~n - 1);< 149263#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149241#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149307#factFINAL assume true; 149305#factEXIT >#72#return; 149306#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; 149327#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149324#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149323#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149322#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; 149165#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149183#factENTRY ~n := #in~n; 149279#L25 assume !(~n <= 0); 149147#L26 call #t~ret0 := fact(~n - 1);< 149139#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149182#factFINAL assume true; 149163#factEXIT >#68#return; 149169#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149184#factENTRY ~n := #in~n; 149271#L25 assume !(~n <= 0); 149146#L26 call #t~ret0 := fact(~n - 1);< 149263#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149241#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149307#factFINAL assume true; 149305#factEXIT >#70#return; 149168#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149185#factENTRY ~n := #in~n; 149277#L25 assume !(~n <= 0); 149147#L26 call #t~ret0 := fact(~n - 1);< 149139#factENTRY ~n := #in~n; 149275#L25 assume ~n <= 0;#res := 1; 149321#factFINAL assume true; 149319#factEXIT >#66#return; 149318#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149317#factFINAL assume true; 149315#factEXIT >#72#return; 149302#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; 149336#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149335#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149325#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149326#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; 149177#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149183#factENTRY ~n := #in~n; 149279#L25 assume !(~n <= 0); 149147#L26 call #t~ret0 := fact(~n - 1);< 149139#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149182#factFINAL assume true; 149163#factEXIT >#68#return; 149175#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149184#factENTRY ~n := #in~n; 149271#L25 assume !(~n <= 0); 149146#L26 call #t~ret0 := fact(~n - 1);< 149263#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149188#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149182#factFINAL assume true; 149163#factEXIT >#70#return; 149176#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149183#factENTRY ~n := #in~n; 149279#L25 assume ~n <= 0;#res := 1; 149304#factFINAL assume true; 149301#factEXIT >#72#return; 149303#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; 149334#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 149333#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149273#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 149274#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; 149013#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 149014#factENTRY ~n := #in~n; 149268#L25 assume !(~n <= 0); 149138#L26 call #t~ret0 := fact(~n - 1);< 149139#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149129#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149130#factFINAL assume true; 149119#factEXIT >#74#return; 149121#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 149113#factENTRY ~n := #in~n; 149152#L25 assume !(~n <= 0); 149144#L26 call #t~ret0 := fact(~n - 1);< 149263#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149153#L25 assume !(~n <= 0); 149142#L26 call #t~ret0 := fact(~n - 1);< 149266#factENTRY ~n := #in~n; 149270#L25 assume ~n <= 0;#res := 1; 149269#factFINAL assume true; 149265#factEXIT >#66#return; 149264#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149262#factFINAL assume true; 149238#factEXIT >#66#return; 149190#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149140#factFINAL assume true; 149149#factEXIT >#66#return; 149129#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149130#factFINAL assume true; 149119#factEXIT >#76#return; 149122#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 149439#factENTRY ~n := #in~n; 149237#L25 assume !(~n <= 0); 149042#L26 call #t~ret0 := fact(~n - 1);< 149231#factENTRY ~n := #in~n; 149100#L25 assume ~n <= 0;#res := 1; 149041#factFINAL assume true; 149045#factEXIT >#66#return; 149136#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 149445#factFINAL assume true; 149349#factEXIT >#78#return; 149058#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; 149059#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 149069#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 149118#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 149081#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 149082#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 149181#L42-3 [2022-07-23 14:20:41,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:41,363 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 16 times [2022-07-23 14:20:41,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:41,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [553407147] [2022-07-23 14:20:41,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:41,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:41,370 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:41,370 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1213844882] [2022-07-23 14:20:41,370 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:20:41,371 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:41,371 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:41,375 INFO L229 MonitoredProcess]: Starting monitored process 142 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:41,397 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (142)] Waiting until timeout for monitored process [2022-07-23 14:20:41,569 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:20:41,569 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:20:41,569 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:41,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:41,677 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:41,677 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:41,677 INFO L85 PathProgramCache]: Analyzing trace with hash -2073829095, now seen corresponding path program 16 times [2022-07-23 14:20:41,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:41,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [180418892] [2022-07-23 14:20:41,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:41,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:41,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:41,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1561048635] [2022-07-23 14:20:41,685 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-07-23 14:20:41,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:41,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:41,687 INFO L229 MonitoredProcess]: Starting monitored process 143 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:41,705 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (143)] Waiting until timeout for monitored process [2022-07-23 14:20:41,813 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-07-23 14:20:41,813 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:41,815 INFO L263 TraceCheckSpWp]: Trace formula consists of 635 conjuncts, 33 conjunts are in the unsatisfiable core [2022-07-23 14:20:41,818 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:42,103 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 1742 proven. 959 refuted. 0 times theorem prover too weak. 2434 trivial. 0 not checked. [2022-07-23 14:20:42,104 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:43,411 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 575 proven. 1260 refuted. 0 times theorem prover too weak. 3300 trivial. 0 not checked. [2022-07-23 14:20:43,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:43,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [180418892] [2022-07-23 14:20:43,412 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:43,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1561048635] [2022-07-23 14:20:43,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1561048635] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:43,412 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:43,412 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 24] total 28 [2022-07-23 14:20:43,412 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748341296] [2022-07-23 14:20:43,412 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-07-23 14:20:43,413 INFO L769 eck$LassoCheckResult]: loop already infeasible [2022-07-23 14:20:43,413 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-23 14:20:43,415 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-07-23 14:20:43,415 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=647, Unknown=0, NotChecked=0, Total=756 [2022-07-23 14:20:43,415 INFO L87 Difference]: Start difference. First operand 3097 states and 4621 transitions. cyclomatic complexity: 1548 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) [2022-07-23 14:20:45,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-23 14:20:45,372 INFO L93 Difference]: Finished difference Result 4550 states and 7157 transitions. [2022-07-23 14:20:45,373 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-07-23 14:20:45,373 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4550 states and 7157 transitions. [2022-07-23 14:20:45,390 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 200 [2022-07-23 14:20:45,404 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4550 states to 2295 states and 3502 transitions. [2022-07-23 14:20:45,404 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 518 [2022-07-23 14:20:45,405 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 518 [2022-07-23 14:20:45,405 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2295 states and 3502 transitions. [2022-07-23 14:20:45,405 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-23 14:20:45,406 INFO L369 hiAutomatonCegarLoop]: Abstraction has 2295 states and 3502 transitions. [2022-07-23 14:20:45,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2295 states and 3502 transitions. [2022-07-23 14:20:45,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2295 to 1627. [2022-07-23 14:20:45,467 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1627 states, 1067 states have (on average 1.0552952202436738) internal successors, (1126), 1066 states have internal predecessors, (1126), 371 states have call successors, (376), 160 states have call predecessors, (376), 189 states have return successors, (886), 400 states have call predecessors, (886), 371 states have call successors, (886) [2022-07-23 14:20:45,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1627 states to 1627 states and 2388 transitions. [2022-07-23 14:20:45,472 INFO L392 hiAutomatonCegarLoop]: Abstraction has 1627 states and 2388 transitions. [2022-07-23 14:20:45,472 INFO L374 stractBuchiCegarLoop]: Abstraction has 1627 states and 2388 transitions. [2022-07-23 14:20:45,472 INFO L287 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2022-07-23 14:20:45,473 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1627 states and 2388 transitions. [2022-07-23 14:20:45,478 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 167 [2022-07-23 14:20:45,478 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-23 14:20:45,478 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-23 14:20:45,479 INFO L179 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] [2022-07-23 14:20:45,479 INFO L180 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] [2022-07-23 14:20:45,479 INFO L752 eck$LassoCheckResult]: Stem: 158540#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true; 158512#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; 158513#L35 assume !(main_~x~0#1 < 0);main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 158539#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; 158526#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 158527#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159756#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; 158492#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158493#factENTRY ~n := #in~n; 159664#L25 assume ~n <= 0;#res := 1; 159660#factFINAL assume true; 159657#factEXIT >#68#return; 158556#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158557#factENTRY ~n := #in~n; 159593#L25 assume ~n <= 0;#res := 1; 159591#factFINAL assume true; 159587#factEXIT >#70#return; 158489#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158490#factENTRY ~n := #in~n; 159955#L25 assume ~n <= 0;#res := 1; 159954#factFINAL assume true; 159953#factEXIT >#72#return; 159952#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; 159950#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 159947#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159943#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159941#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; 159937#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159938#factENTRY ~n := #in~n; 159949#L25 assume !(~n <= 0); 159945#L26 call #t~ret0 := fact(~n - 1);< 159946#factENTRY ~n := #in~n; 159951#L25 assume ~n <= 0;#res := 1; 159948#factFINAL assume true; 159944#factEXIT >#66#return; 159942#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159940#factFINAL assume true; 159936#factEXIT >#74#return; 159933#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159934#factENTRY ~n := #in~n; 159939#L25 assume ~n <= 0;#res := 1; 159935#factFINAL assume true; 159932#factEXIT >#76#return; 159930#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159931#factENTRY ~n := #in~n; 160010#L25 assume !(~n <= 0); 159992#L26 call #t~ret0 := fact(~n - 1);< 160009#factENTRY ~n := #in~n; 160016#L25 assume ~n <= 0;#res := 1; 160013#factFINAL assume true; 160006#factEXIT >#66#return; 159995#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159997#factFINAL assume true; 159929#factEXIT >#78#return; 159928#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; 159927#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 159926#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159925#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159924#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; 159917#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159922#factENTRY ~n := #in~n; 159919#L25 assume !(~n <= 0); 159011#L26 call #t~ret0 := fact(~n - 1);< 159918#factENTRY ~n := #in~n; 159968#L25 assume !(~n <= 0); 159911#L26 call #t~ret0 := fact(~n - 1);< 159967#factENTRY ~n := #in~n; 159971#L25 assume ~n <= 0;#res := 1; 159969#factFINAL assume true; 159966#factEXIT >#66#return; 159965#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159964#factFINAL assume true; 159961#factEXIT >#66#return; 159960#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159959#factFINAL assume true; 159957#factEXIT >#74#return; 159916#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159922#factENTRY ~n := #in~n; 159919#L25 assume ~n <= 0;#res := 1; 159920#factFINAL assume true; 159977#factEXIT >#76#return; 159014#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159923#factENTRY ~n := #in~n; 159921#L25 assume !(~n <= 0); 159013#L26 call #t~ret0 := fact(~n - 1);< 159015#factENTRY ~n := #in~n; 159968#L25 assume !(~n <= 0); 159911#L26 call #t~ret0 := fact(~n - 1);< 159967#factENTRY ~n := #in~n; 159971#L25 assume ~n <= 0;#res := 1; 159969#factFINAL assume true; 159966#factEXIT >#66#return; 159965#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159964#factFINAL assume true; 159961#factEXIT >#66#return; 159962#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 160002#factFINAL assume true; 159986#factEXIT >#78#return; 158992#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; 158990#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 158984#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158965#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 158964#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 158528#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 158529#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159667#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; 159637#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159638#factENTRY ~n := #in~n; 159649#L25 assume !(~n <= 0); 159643#L26 call #t~ret0 := fact(~n - 1);< 159646#factENTRY ~n := #in~n; 159655#L25 assume ~n <= 0;#res := 1; 159652#factFINAL assume true; 159642#factEXIT >#66#return; 159645#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159648#factFINAL assume true; 159636#factEXIT >#68#return; 159631#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159632#factENTRY ~n := #in~n; 159647#L25 assume ~n <= 0;#res := 1; 159635#factFINAL assume true; 159630#factEXIT >#70#return; 159626#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159627#factENTRY ~n := #in~n; 159654#L25 assume !(~n <= 0); 159644#L26 call #t~ret0 := fact(~n - 1);< 159646#factENTRY ~n := #in~n; 159655#L25 assume ~n <= 0;#res := 1; 159652#factFINAL assume true; 159642#factEXIT >#66#return; 159634#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159629#factFINAL assume true; 159625#factEXIT >#72#return; 159623#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; 159621#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 159619#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159618#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159616#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; 159613#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159614#factENTRY ~n := #in~n; 159669#L25 assume !(~n <= 0); 159662#L26 call #t~ret0 := fact(~n - 1);< 159663#factENTRY ~n := #in~n; 159666#L25 assume ~n <= 0;#res := 1; 159665#factFINAL assume true; 159661#factEXIT >#66#return; 159659#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159658#factFINAL assume true; 159612#factEXIT >#68#return; 159595#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159608#factENTRY ~n := #in~n; 159605#L25 assume !(~n <= 0); 159599#L26 call #t~ret0 := fact(~n - 1);< 159602#factENTRY ~n := #in~n; 159606#L25 assume ~n <= 0;#res := 1; 159603#factFINAL assume true; 159597#factEXIT >#66#return; 159594#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159596#factFINAL assume true; 159651#factEXIT >#70#return; 159640#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159641#factENTRY ~n := #in~n; 159653#L25 assume ~n <= 0;#res := 1; 159650#factFINAL assume true; 159639#factEXIT >#72#return; 159633#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; 159628#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 159624#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 159622#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 159620#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; 159611#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 159617#factENTRY ~n := #in~n; 159615#L25 assume !(~n <= 0); 159598#L26 call #t~ret0 := fact(~n - 1);< 159602#factENTRY ~n := #in~n; 159609#L25 assume !(~n <= 0); 159672#L26 call #t~ret0 := fact(~n - 1);< 159676#factENTRY ~n := #in~n; 159678#L25 assume ~n <= 0;#res := 1; 159677#factFINAL assume true; 159675#factEXIT >#66#return; 159674#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159673#factFINAL assume true; 159671#factEXIT >#66#return; 159670#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159668#factFINAL assume true; 159656#factEXIT >#74#return; 159604#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 159610#factENTRY ~n := #in~n; 159607#L25 assume !(~n <= 0); 159600#L26 call #t~ret0 := fact(~n - 1);< 159602#factENTRY ~n := #in~n; 159606#L25 assume ~n <= 0;#res := 1; 159603#factFINAL assume true; 159597#factEXIT >#66#return; 159601#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159770#factFINAL assume true; 159768#factEXIT >#76#return; 159005#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 159827#factENTRY ~n := #in~n; 159854#L25 assume !(~n <= 0); 159787#L26 call #t~ret0 := fact(~n - 1);< 159809#factENTRY ~n := #in~n; 159806#L25 assume ~n <= 0;#res := 1; 159807#factFINAL assume true; 159784#factEXIT >#66#return; 159791#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 159907#factFINAL assume true; 159004#factEXIT >#78#return; 159003#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; 159001#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 158999#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158988#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 158537#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 158538#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 158781#L42-3 [2022-07-23 14:20:45,480 INFO L754 eck$LassoCheckResult]: Loop: 158781#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158779#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; 158771#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158773#factENTRY ~n := #in~n; 158805#L25 assume !(~n <= 0); 158801#L26 call #t~ret0 := fact(~n - 1);< 158519#factENTRY ~n := #in~n; 158843#L25 assume !(~n <= 0); 158802#L26 call #t~ret0 := fact(~n - 1);< 158841#factENTRY ~n := #in~n; 158843#L25 assume !(~n <= 0); 158802#L26 call #t~ret0 := fact(~n - 1);< 158841#factENTRY ~n := #in~n; 158845#L25 assume ~n <= 0;#res := 1; 158846#factFINAL assume true; 158844#factEXIT >#66#return; 158842#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158840#factFINAL assume true; 158838#factEXIT >#66#return; 158803#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158944#factFINAL assume true; 158800#factEXIT >#66#return; 158797#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158794#factFINAL assume true; 158769#factEXIT >#68#return; 158772#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158776#factENTRY ~n := #in~n; 158778#L25 assume ~n <= 0;#res := 1; 158777#factFINAL assume true; 158775#factEXIT >#70#return; 158770#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158773#factENTRY ~n := #in~n; 158805#L25 assume !(~n <= 0); 158801#L26 call #t~ret0 := fact(~n - 1);< 158519#factENTRY ~n := #in~n; 158843#L25 assume !(~n <= 0); 158802#L26 call #t~ret0 := fact(~n - 1);< 158841#factENTRY ~n := #in~n; 158843#L25 assume !(~n <= 0); 158802#L26 call #t~ret0 := fact(~n - 1);< 158841#factENTRY ~n := #in~n; 158845#L25 assume ~n <= 0;#res := 1; 158846#factFINAL assume true; 158844#factEXIT >#66#return; 158842#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158840#factFINAL assume true; 158838#factEXIT >#66#return; 158803#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158944#factFINAL assume true; 158800#factEXIT >#66#return; 158797#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158794#factFINAL assume true; 158769#factEXIT >#72#return; 158764#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; 158763#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 158762#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158760#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158754#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; 158641#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158667#factENTRY ~n := #in~n; 158740#L25 assume !(~n <= 0); 158597#L26 call #t~ret0 := fact(~n - 1);< 158603#factENTRY ~n := #in~n; 158670#L25 assume !(~n <= 0); 158587#L26 call #t~ret0 := fact(~n - 1);< 158617#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158703#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158701#factFINAL assume true; 158640#factEXIT >#68#return; 158660#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158750#factENTRY ~n := #in~n; 158761#L25 assume !(~n <= 0); 158756#L26 call #t~ret0 := fact(~n - 1);< 158759#factENTRY ~n := #in~n; 158774#L25 assume ~n <= 0;#res := 1; 158765#factFINAL assume true; 158755#factEXIT >#66#return; 158753#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158751#factFINAL assume true; 158747#factEXIT >#70#return; 158646#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158664#factENTRY ~n := #in~n; 158791#L25 assume !(~n <= 0); 158590#L26 call #t~ret0 := fact(~n - 1);< 158594#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158593#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158746#factFINAL assume true; 158743#factEXIT >#72#return; 158741#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; 158742#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 158736#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158737#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158732#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; 158632#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158638#factENTRY ~n := #in~n; 158665#L25 assume !(~n <= 0); 158589#L26 call #t~ret0 := fact(~n - 1);< 158758#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158703#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158701#factFINAL assume true; 158640#factEXIT >#68#return; 158651#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158664#factENTRY ~n := #in~n; 158791#L25 assume !(~n <= 0); 158590#L26 call #t~ret0 := fact(~n - 1);< 158594#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158593#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158746#factFINAL assume true; 158743#factEXIT >#70#return; 158655#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158752#factENTRY ~n := #in~n; 158768#L25 assume !(~n <= 0); 158589#L26 call #t~ret0 := fact(~n - 1);< 158758#factENTRY ~n := #in~n; 158774#L25 assume ~n <= 0;#res := 1; 158765#factFINAL assume true; 158755#factEXIT >#66#return; 158753#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158751#factFINAL assume true; 158747#factEXIT >#72#return; 158749#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; 158813#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 158812#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158811#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158809#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; 158648#L30 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158667#factENTRY ~n := #in~n; 158740#L25 assume !(~n <= 0); 158597#L26 call #t~ret0 := fact(~n - 1);< 158603#factENTRY ~n := #in~n; 158670#L25 assume !(~n <= 0); 158587#L26 call #t~ret0 := fact(~n - 1);< 158617#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158703#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158701#factFINAL assume true; 158640#factEXIT >#68#return; 158647#L30-1 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158664#factENTRY ~n := #in~n; 158791#L25 assume !(~n <= 0); 158590#L26 call #t~ret0 := fact(~n - 1);< 158594#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158703#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158701#factFINAL assume true; 158640#factEXIT >#70#return; 158633#L30-2 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158638#factENTRY ~n := #in~n; 158665#L25 assume ~n <= 0;#res := 1; 158639#factFINAL assume true; 158630#factEXIT >#72#return; 158637#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; 158924#L30-4 main_#t~ret9#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret9#1; 158716#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158680#L42-3 assume !!(main_~k~0#1 <= main_~x~0#1); 158581#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; 158575#L30-5 call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);< 158577#factENTRY ~n := #in~n; 158618#L25 assume !(~n <= 0); 158598#L26 call #t~ret0 := fact(~n - 1);< 158603#factENTRY ~n := #in~n; 158670#L25 assume !(~n <= 0); 158587#L26 call #t~ret0 := fact(~n - 1);< 158617#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158601#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158733#factFINAL assume true; 158596#factEXIT >#66#return; 158580#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158579#factFINAL assume true; 158574#factEXIT >#74#return; 158569#L30-6 call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);< 158572#factENTRY ~n := #in~n; 158619#L25 assume !(~n <= 0); 158585#L26 call #t~ret0 := fact(~n - 1);< 158594#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158626#L25 assume !(~n <= 0); 158588#L26 call #t~ret0 := fact(~n - 1);< 158623#factENTRY ~n := #in~n; 158627#L25 assume ~n <= 0;#res := 1; 158624#factFINAL assume true; 158622#factEXIT >#66#return; 158621#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158604#factFINAL assume true; 158583#factEXIT >#66#return; 158592#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158706#factFINAL assume true; 158704#factEXIT >#66#return; 158702#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158700#factFINAL assume true; 158698#factEXIT >#76#return; 158571#L30-7 call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);< 158726#factENTRY ~n := #in~n; 158866#L25 assume !(~n <= 0); 158690#L26 call #t~ret0 := fact(~n - 1);< 158821#factENTRY ~n := #in~n; 158961#L25 assume ~n <= 0;#res := 1; 158960#factFINAL assume true; 158959#factEXIT >#66#return; 158694#L26-1 #res := ~n * #t~ret0;havoc #t~ret0; 158948#factFINAL assume true; 158731#factEXIT >#78#return; 158514#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; 158515#L30-9 main_#t~ret10#1 := binomialCoefficient_#res#1;assume { :end_inline_binomialCoefficient } true;havoc main_#t~ret10#1; 158524#L42-2 main_#t~post8#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; 158567#L42-3 assume !(main_~k~0#1 <= main_~x~0#1); 158535#L41-2 main_#t~post7#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; 158536#L41-3 assume !!(main_~n~0#1 <= main_~x~0#1);main_~k~0#1 := 0; 158781#L42-3 [2022-07-23 14:20:45,480 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:45,480 INFO L85 PathProgramCache]: Analyzing trace with hash 52177008, now seen corresponding path program 17 times [2022-07-23 14:20:45,480 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:45,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1771261778] [2022-07-23 14:20:45,481 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:45,481 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:45,491 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:45,491 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [517772995] [2022-07-23 14:20:45,491 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:20:45,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:45,491 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:45,545 INFO L229 MonitoredProcess]: Starting monitored process 144 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:45,546 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (144)] Waiting until timeout for monitored process [2022-07-23 14:20:45,727 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 23 check-sat command(s) [2022-07-23 14:20:45,727 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:20:45,727 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:45,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:45,825 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:45,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:45,826 INFO L85 PathProgramCache]: Analyzing trace with hash 10230353, now seen corresponding path program 17 times [2022-07-23 14:20:45,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:45,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1764497184] [2022-07-23 14:20:45,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:45,826 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:45,832 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:45,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2124556138] [2022-07-23 14:20:45,832 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-07-23 14:20:45,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:45,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:45,839 INFO L229 MonitoredProcess]: Starting monitored process 145 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:45,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (145)] Waiting until timeout for monitored process [2022-07-23 14:20:46,086 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 30 check-sat command(s) [2022-07-23 14:20:46,086 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-07-23 14:20:46,086 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-23 14:20:46,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-23 14:20:46,408 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-23 14:20:46,408 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-23 14:20:46,408 INFO L85 PathProgramCache]: Analyzing trace with hash 1336296194, now seen corresponding path program 18 times [2022-07-23 14:20:46,409 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-23 14:20:46,409 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [441709111] [2022-07-23 14:20:46,409 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-23 14:20:46,409 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-23 14:20:46,418 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-07-23 14:20:46,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1868362122] [2022-07-23 14:20:46,419 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-07-23 14:20:46,419 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-23 14:20:46,419 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-23 14:20:46,421 INFO L229 MonitoredProcess]: Starting monitored process 146 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-23 14:20:46,422 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (146)] Waiting until timeout for monitored process [2022-07-23 14:20:46,585 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 18 check-sat command(s) [2022-07-23 14:20:46,585 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-07-23 14:20:46,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 668 conjuncts, 19 conjunts are in the unsatisfiable core [2022-07-23 14:20:46,591 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-23 14:20:46,876 INFO L134 CoverageAnalysis]: Checked inductivity of 14739 backedges. 651 proven. 754 refuted. 0 times theorem prover too weak. 13334 trivial. 0 not checked. [2022-07-23 14:20:46,876 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-23 14:20:47,614 INFO L134 CoverageAnalysis]: Checked inductivity of 14739 backedges. 582 proven. 825 refuted. 0 times theorem prover too weak. 13332 trivial. 0 not checked. [2022-07-23 14:20:47,614 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-23 14:20:47,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [441709111] [2022-07-23 14:20:47,614 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-07-23 14:20:47,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1868362122] [2022-07-23 14:20:47,615 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1868362122] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-23 14:20:47,615 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-07-23 14:20:47,615 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 17] total 23 [2022-07-23 14:20:47,615 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [639418538] [2022-07-23 14:20:47,615 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton