./Ultimate.py --spec ../sv-benchmarks/c/properties/no-overflow.prp --file ../sv-benchmarks/c/termination-numeric/Binomial.c --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- Checking for overflows Using default analysis Version 5fbdf5bf Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/termination-numeric/Binomial.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Overflow-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(G ! overflow) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash 7271d13f0b7b365fd7ecc81e9b65f9e103181ef3 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ Execution finished normally Using bit-precise analysis No suitable file found in config dir /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config using search string *Overflow*64bit*_Bitvector*.epf No suitable settings file found using Overflow*64bit*_Bitvector ERROR: UNSUPPORTED PROPERTY Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: IllegalStateException: ManagedScript already locked by de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker@4cacfbde --- Real Ultimate output --- This is Ultimate 0.2.1-wip.dd.seqcomp-5fbdf5b [2021-09-14 00:13:25,949 INFO L177 SettingsManager]: Resetting all preferences to default values... [2021-09-14 00:13:25,951 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2021-09-14 00:13:25,971 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2021-09-14 00:13:25,972 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2021-09-14 00:13:25,973 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2021-09-14 00:13:25,974 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2021-09-14 00:13:25,975 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2021-09-14 00:13:25,976 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2021-09-14 00:13:25,977 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2021-09-14 00:13:25,978 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2021-09-14 00:13:25,978 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2021-09-14 00:13:25,979 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2021-09-14 00:13:25,980 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2021-09-14 00:13:25,981 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2021-09-14 00:13:25,982 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2021-09-14 00:13:25,982 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2021-09-14 00:13:25,983 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2021-09-14 00:13:25,984 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2021-09-14 00:13:25,986 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2021-09-14 00:13:25,987 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2021-09-14 00:13:25,988 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2021-09-14 00:13:25,989 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2021-09-14 00:13:25,990 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2021-09-14 00:13:25,994 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2021-09-14 00:13:25,995 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2021-09-14 00:13:26,000 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2021-09-14 00:13:26,001 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2021-09-14 00:13:26,002 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2021-09-14 00:13:26,002 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2021-09-14 00:13:26,004 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2021-09-14 00:13:26,005 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2021-09-14 00:13:26,006 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2021-09-14 00:13:26,006 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2021-09-14 00:13:26,008 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2021-09-14 00:13:26,008 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2021-09-14 00:13:26,009 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2021-09-14 00:13:26,009 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2021-09-14 00:13:26,009 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2021-09-14 00:13:26,010 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2021-09-14 00:13:26,011 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2021-09-14 00:13:26,012 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Overflow-64bit-Automizer_Default.epf [2021-09-14 00:13:26,049 INFO L113 SettingsManager]: Loading preferences was successful [2021-09-14 00:13:26,049 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2021-09-14 00:13:26,050 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2021-09-14 00:13:26,050 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2021-09-14 00:13:26,051 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2021-09-14 00:13:26,052 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2021-09-14 00:13:26,052 INFO L138 SettingsManager]: * Use SBE=true [2021-09-14 00:13:26,052 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2021-09-14 00:13:26,052 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2021-09-14 00:13:26,052 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2021-09-14 00:13:26,053 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2021-09-14 00:13:26,053 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2021-09-14 00:13:26,053 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2021-09-14 00:13:26,053 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2021-09-14 00:13:26,053 INFO L138 SettingsManager]: * Check absence of signed integer overflows=true [2021-09-14 00:13:26,061 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2021-09-14 00:13:26,062 INFO L138 SettingsManager]: * Use constant arrays=true [2021-09-14 00:13:26,062 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2021-09-14 00:13:26,062 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2021-09-14 00:13:26,062 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2021-09-14 00:13:26,062 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2021-09-14 00:13:26,062 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2021-09-14 00:13:26,062 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2021-09-14 00:13:26,063 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! overflow) ) 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 -> 7271d13f0b7b365fd7ecc81e9b65f9e103181ef3 [2021-09-14 00:13:26,317 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2021-09-14 00:13:26,331 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2021-09-14 00:13:26,333 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2021-09-14 00:13:26,334 INFO L271 PluginConnector]: Initializing CDTParser... [2021-09-14 00:13:26,335 INFO L275 PluginConnector]: CDTParser initialized [2021-09-14 00:13:26,336 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/Binomial.c [2021-09-14 00:13:26,388 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e2170499c/a850a54e4f63447fa805b5bcf9f85c20/FLAG65c272fa1 [2021-09-14 00:13:26,676 INFO L306 CDTParser]: Found 1 translation units. [2021-09-14 00:13:26,676 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-numeric/Binomial.c [2021-09-14 00:13:26,681 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e2170499c/a850a54e4f63447fa805b5bcf9f85c20/FLAG65c272fa1 [2021-09-14 00:13:27,129 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e2170499c/a850a54e4f63447fa805b5bcf9f85c20 [2021-09-14 00:13:27,131 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2021-09-14 00:13:27,133 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2021-09-14 00:13:27,135 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2021-09-14 00:13:27,135 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2021-09-14 00:13:27,137 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2021-09-14 00:13:27,139 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,139 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@cb5138 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27, skipping insertion in model container [2021-09-14 00:13:27,139 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,145 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2021-09-14 00:13:27,154 INFO L178 MainTranslator]: Built tables and reachable declarations [2021-09-14 00:13:27,255 INFO L206 PostProcessor]: Analyzing one entry point: main [2021-09-14 00:13:27,258 INFO L203 MainTranslator]: Completed pre-run [2021-09-14 00:13:27,277 INFO L206 PostProcessor]: Analyzing one entry point: main [2021-09-14 00:13:27,284 INFO L208 MainTranslator]: Completed translation [2021-09-14 00:13:27,285 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27 WrapperNode [2021-09-14 00:13:27,285 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2021-09-14 00:13:27,286 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2021-09-14 00:13:27,286 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2021-09-14 00:13:27,286 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2021-09-14 00:13:27,290 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,294 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,322 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2021-09-14 00:13:27,323 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2021-09-14 00:13:27,323 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2021-09-14 00:13:27,323 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2021-09-14 00:13:27,355 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,356 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,364 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,365 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,369 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,374 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,378 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,383 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2021-09-14 00:13:27,384 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2021-09-14 00:13:27,385 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2021-09-14 00:13:27,385 INFO L275 PluginConnector]: RCFGBuilder initialized [2021-09-14 00:13:27,385 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (1/1) ... [2021-09-14 00:13:27,390 INFO L170 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2021-09-14 00:13:27,396 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:27,406 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2021-09-14 00:13:27,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2021-09-14 00:13:27,442 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2021-09-14 00:13:27,443 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2021-09-14 00:13:27,443 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2021-09-14 00:13:27,443 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2021-09-14 00:13:27,695 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2021-09-14 00:13:27,695 INFO L299 CfgBuilder]: Removed 10 assume(true) statements. [2021-09-14 00:13:27,696 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.09 12:13:27 BoogieIcfgContainer [2021-09-14 00:13:27,696 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2021-09-14 00:13:27,697 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2021-09-14 00:13:27,697 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2021-09-14 00:13:27,699 INFO L275 PluginConnector]: TraceAbstraction initialized [2021-09-14 00:13:27,699 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.09 12:13:27" (1/3) ... [2021-09-14 00:13:27,699 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25e7414a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.09 12:13:27, skipping insertion in model container [2021-09-14 00:13:27,699 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.09 12:13:27" (2/3) ... [2021-09-14 00:13:27,700 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25e7414a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.09 12:13:27, skipping insertion in model container [2021-09-14 00:13:27,700 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.09 12:13:27" (3/3) ... [2021-09-14 00:13:27,700 INFO L111 eAbstractionObserver]: Analyzing ICFG Binomial.c [2021-09-14 00:13:27,703 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2021-09-14 00:13:27,703 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 20 error locations. [2021-09-14 00:13:27,731 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2021-09-14 00:13:27,736 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2021-09-14 00:13:27,736 INFO L340 AbstractCegarLoop]: Starting to check reachability of 20 error locations. [2021-09-14 00:13:27,750 INFO L276 IsEmpty]: Start isEmpty. Operand has 71 states, 42 states have (on average 1.6666666666666667) internal successors, (70), 62 states have internal predecessors, (70), 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) [2021-09-14 00:13:27,758 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2021-09-14 00:13:27,758 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:27,758 INFO L513 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:27,759 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr14ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:27,762 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:27,762 INFO L82 PathProgramCache]: Analyzing trace with hash 306418195, now seen corresponding path program 1 times [2021-09-14 00:13:27,768 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:27,768 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1993781380] [2021-09-14 00:13:27,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:27,769 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:27,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:27,857 INFO L281 TraceCheckUtils]: 0: Hoare triple {74#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {74#true} is VALID [2021-09-14 00:13:27,857 INFO L281 TraceCheckUtils]: 1: Hoare triple {74#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {74#true} is VALID [2021-09-14 00:13:27,858 INFO L281 TraceCheckUtils]: 2: Hoare triple {74#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {74#true} is VALID [2021-09-14 00:13:27,858 INFO L281 TraceCheckUtils]: 3: Hoare triple {74#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {74#true} is VALID [2021-09-14 00:13:27,859 INFO L281 TraceCheckUtils]: 4: Hoare triple {74#true} assume !true; {75#false} is VALID [2021-09-14 00:13:27,859 INFO L281 TraceCheckUtils]: 5: Hoare triple {75#false} main_#t~post7 := main_~n~0; {75#false} is VALID [2021-09-14 00:13:27,859 INFO L281 TraceCheckUtils]: 6: Hoare triple {75#false} assume !(1 + main_#t~post7 <= 2147483647); {75#false} is VALID [2021-09-14 00:13:27,860 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2021-09-14 00:13:27,860 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:27,860 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1993781380] [2021-09-14 00:13:27,861 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1993781380] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:27,861 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:27,861 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2021-09-14 00:13:27,862 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2016695424] [2021-09-14 00:13:27,866 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) Word has length 7 [2021-09-14 00:13:27,867 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:27,869 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) [2021-09-14 00:13:27,877 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:27,877 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2021-09-14 00:13:27,877 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:27,890 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2021-09-14 00:13:27,891 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2021-09-14 00:13:27,893 INFO L87 Difference]: Start difference. First operand has 71 states, 42 states have (on average 1.6666666666666667) internal successors, (70), 62 states have internal predecessors, (70), 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 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) [2021-09-14 00:13:28,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,025 INFO L93 Difference]: Finished difference Result 139 states and 163 transitions. [2021-09-14 00:13:28,026 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2021-09-14 00:13:28,026 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) Word has length 7 [2021-09-14 00:13:28,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:28,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) [2021-09-14 00:13:28,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 163 transitions. [2021-09-14 00:13:28,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) [2021-09-14 00:13:28,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 163 transitions. [2021-09-14 00:13:28,039 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 163 transitions. [2021-09-14 00:13:28,155 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:28,162 INFO L225 Difference]: With dead ends: 139 [2021-09-14 00:13:28,163 INFO L226 Difference]: Without dead ends: 68 [2021-09-14 00:13:28,166 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.04ms TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2021-09-14 00:13:28,169 INFO L928 BasicCegarLoop]: 14 mSDtfsCounter, 0 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 42.41ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 14 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.15ms SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 44.21ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:28,170 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 14 Invalid, 68 Unknown, 0 Unchecked, 1.15ms Time], IncrementalHoareTripleChecker [0 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 44.21ms Time] [2021-09-14 00:13:28,183 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2021-09-14 00:13:28,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 68. [2021-09-14 00:13:28,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:28,204 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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) [2021-09-14 00:13:28,205 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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) [2021-09-14 00:13:28,206 INFO L87 Difference]: Start difference. First operand 68 states. Second operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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) [2021-09-14 00:13:28,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,216 INFO L93 Difference]: Finished difference Result 68 states and 77 transitions. [2021-09-14 00:13:28,216 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 77 transitions. [2021-09-14 00:13:28,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:28,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:28,219 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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 68 states. [2021-09-14 00:13:28,220 INFO L87 Difference]: Start difference. First operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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 68 states. [2021-09-14 00:13:28,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,227 INFO L93 Difference]: Finished difference Result 68 states and 77 transitions. [2021-09-14 00:13:28,227 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 77 transitions. [2021-09-14 00:13:28,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:28,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:28,228 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:28,229 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:28,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 40 states have (on average 1.575) internal successors, (63), 59 states have internal predecessors, (63), 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) [2021-09-14 00:13:28,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 77 transitions. [2021-09-14 00:13:28,239 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 77 transitions. Word has length 7 [2021-09-14 00:13:28,239 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:28,239 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 77 transitions. [2021-09-14 00:13:28,240 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 3.5) internal successors, (7), 2 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) [2021-09-14 00:13:28,240 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 77 transitions. [2021-09-14 00:13:28,240 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2021-09-14 00:13:28,240 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:28,240 INFO L513 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:28,241 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2021-09-14 00:13:28,241 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr14ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:28,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:28,242 INFO L82 PathProgramCache]: Analyzing trace with hash 306365340, now seen corresponding path program 1 times [2021-09-14 00:13:28,242 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:28,242 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [216388540] [2021-09-14 00:13:28,242 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:28,243 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:28,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:28,291 INFO L281 TraceCheckUtils]: 0: Hoare triple {459#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {459#true} is VALID [2021-09-14 00:13:28,292 INFO L281 TraceCheckUtils]: 1: Hoare triple {459#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {461#(<= 0 ULTIMATE.start_main_~x~0)} is VALID [2021-09-14 00:13:28,293 INFO L281 TraceCheckUtils]: 2: Hoare triple {461#(<= 0 ULTIMATE.start_main_~x~0)} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {461#(<= 0 ULTIMATE.start_main_~x~0)} is VALID [2021-09-14 00:13:28,293 INFO L281 TraceCheckUtils]: 3: Hoare triple {461#(<= 0 ULTIMATE.start_main_~x~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {462#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~x~0)} is VALID [2021-09-14 00:13:28,294 INFO L281 TraceCheckUtils]: 4: Hoare triple {462#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~x~0)} assume !(main_~k~0 <= main_~x~0); {460#false} is VALID [2021-09-14 00:13:28,294 INFO L281 TraceCheckUtils]: 5: Hoare triple {460#false} main_#t~post7 := main_~n~0; {460#false} is VALID [2021-09-14 00:13:28,294 INFO L281 TraceCheckUtils]: 6: Hoare triple {460#false} assume !(1 + main_#t~post7 <= 2147483647); {460#false} is VALID [2021-09-14 00:13:28,294 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2021-09-14 00:13:28,294 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:28,295 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [216388540] [2021-09-14 00:13:28,296 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [216388540] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:28,296 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:28,298 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2021-09-14 00:13:28,298 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [321870096] [2021-09-14 00:13:28,300 INFO L78 Accepts]: Start accepts. Automaton has 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) Word has length 7 [2021-09-14 00:13:28,300 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:28,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 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) [2021-09-14 00:13:28,306 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:28,306 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:28,306 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:28,307 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:28,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:28,315 INFO L87 Difference]: Start difference. First operand 68 states and 77 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) [2021-09-14 00:13:28,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,574 INFO L93 Difference]: Finished difference Result 134 states and 153 transitions. [2021-09-14 00:13:28,574 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2021-09-14 00:13:28,574 INFO L78 Accepts]: Start accepts. Automaton has 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) Word has length 7 [2021-09-14 00:13:28,575 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:28,575 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) [2021-09-14 00:13:28,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 153 transitions. [2021-09-14 00:13:28,582 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) [2021-09-14 00:13:28,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 153 transitions. [2021-09-14 00:13:28,586 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 153 transitions. [2021-09-14 00:13:28,706 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:28,708 INFO L225 Difference]: With dead ends: 134 [2021-09-14 00:13:28,708 INFO L226 Difference]: Without dead ends: 69 [2021-09-14 00:13:28,709 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 16.32ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:28,710 INFO L928 BasicCegarLoop]: 14 mSDtfsCounter, 87 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 72.91ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 87 SdHoareTripleChecker+Valid, 30 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 5.59ms SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 78.82ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:28,710 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [87 Valid, 30 Invalid, 113 Unknown, 0 Unchecked, 5.59ms Time], IncrementalHoareTripleChecker [13 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 78.82ms Time] [2021-09-14 00:13:28,711 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2021-09-14 00:13:28,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 69. [2021-09-14 00:13:28,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:28,730 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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) [2021-09-14 00:13:28,730 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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) [2021-09-14 00:13:28,730 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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) [2021-09-14 00:13:28,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,732 INFO L93 Difference]: Finished difference Result 69 states and 78 transitions. [2021-09-14 00:13:28,732 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 78 transitions. [2021-09-14 00:13:28,733 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:28,733 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:28,734 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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 69 states. [2021-09-14 00:13:28,734 INFO L87 Difference]: Start difference. First operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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 69 states. [2021-09-14 00:13:28,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:28,736 INFO L93 Difference]: Finished difference Result 69 states and 78 transitions. [2021-09-14 00:13:28,737 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 78 transitions. [2021-09-14 00:13:28,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:28,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:28,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:28,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:28,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 41 states have (on average 1.5609756097560976) internal successors, (64), 60 states have internal predecessors, (64), 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) [2021-09-14 00:13:28,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 78 transitions. [2021-09-14 00:13:28,741 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 78 transitions. Word has length 7 [2021-09-14 00:13:28,741 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:28,741 INFO L470 AbstractCegarLoop]: Abstraction has 69 states and 78 transitions. [2021-09-14 00:13:28,741 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has 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) [2021-09-14 00:13:28,741 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 78 transitions. [2021-09-14 00:13:28,742 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2021-09-14 00:13:28,742 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:28,742 INFO L513 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:28,742 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2021-09-14 00:13:28,742 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:28,743 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:28,743 INFO L82 PathProgramCache]: Analyzing trace with hash 154399188, now seen corresponding path program 1 times [2021-09-14 00:13:28,743 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:28,743 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1171385200] [2021-09-14 00:13:28,743 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:28,744 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:28,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:28,771 INFO L281 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {846#true} is VALID [2021-09-14 00:13:28,771 INFO L281 TraceCheckUtils]: 1: Hoare triple {846#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {846#true} is VALID [2021-09-14 00:13:28,772 INFO L281 TraceCheckUtils]: 2: Hoare triple {846#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {848#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:28,773 INFO L281 TraceCheckUtils]: 3: Hoare triple {848#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {849#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:28,773 INFO L281 TraceCheckUtils]: 4: Hoare triple {849#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {849#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:28,774 INFO L281 TraceCheckUtils]: 5: Hoare triple {849#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {847#false} is VALID [2021-09-14 00:13:28,774 INFO L264 TraceCheckUtils]: 6: Hoare triple {847#false} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {847#false} is VALID [2021-09-14 00:13:28,775 INFO L281 TraceCheckUtils]: 7: Hoare triple {847#false} ~n := #in~n; {847#false} is VALID [2021-09-14 00:13:28,775 INFO L281 TraceCheckUtils]: 8: Hoare triple {847#false} assume !(~n <= 0); {847#false} is VALID [2021-09-14 00:13:28,775 INFO L281 TraceCheckUtils]: 9: Hoare triple {847#false} assume !(~n - 1 <= 2147483647); {847#false} is VALID [2021-09-14 00:13:28,776 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2021-09-14 00:13:28,776 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:28,776 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1171385200] [2021-09-14 00:13:28,777 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1171385200] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:28,777 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:28,777 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2021-09-14 00:13:28,778 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [956044367] [2021-09-14 00:13:28,778 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2021-09-14 00:13:28,778 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:28,778 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:28,784 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:28,784 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:28,785 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:28,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:28,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:28,785 INFO L87 Difference]: Start difference. First operand 69 states and 78 transitions. Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:29,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:29,163 INFO L93 Difference]: Finished difference Result 198 states and 225 transitions. [2021-09-14 00:13:29,163 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2021-09-14 00:13:29,163 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2021-09-14 00:13:29,163 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:29,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:29,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 223 transitions. [2021-09-14 00:13:29,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:29,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 223 transitions. [2021-09-14 00:13:29,169 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 223 transitions. [2021-09-14 00:13:29,327 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 223 edges. 223 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:29,330 INFO L225 Difference]: With dead ends: 198 [2021-09-14 00:13:29,330 INFO L226 Difference]: Without dead ends: 132 [2021-09-14 00:13:29,331 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.97ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:29,331 INFO L928 BasicCegarLoop]: 20 mSDtfsCounter, 94 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 149.08ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 185 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.56ms SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 150.52ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:29,332 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 42 Invalid, 185 Unknown, 0 Unchecked, 2.56ms Time], IncrementalHoareTripleChecker [8 Valid, 177 Invalid, 0 Unknown, 0 Unchecked, 150.52ms Time] [2021-09-14 00:13:29,333 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2021-09-14 00:13:29,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 72. [2021-09-14 00:13:29,360 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:29,360 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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) [2021-09-14 00:13:29,361 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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) [2021-09-14 00:13:29,361 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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) [2021-09-14 00:13:29,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:29,365 INFO L93 Difference]: Finished difference Result 132 states and 149 transitions. [2021-09-14 00:13:29,365 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 149 transitions. [2021-09-14 00:13:29,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:29,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:29,367 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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 132 states. [2021-09-14 00:13:29,367 INFO L87 Difference]: Start difference. First operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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 132 states. [2021-09-14 00:13:29,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:29,371 INFO L93 Difference]: Finished difference Result 132 states and 149 transitions. [2021-09-14 00:13:29,371 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 149 transitions. [2021-09-14 00:13:29,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:29,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:29,372 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:29,372 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:29,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 44 states have (on average 1.5227272727272727) internal successors, (67), 63 states have internal predecessors, (67), 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) [2021-09-14 00:13:29,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 81 transitions. [2021-09-14 00:13:29,374 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 81 transitions. Word has length 10 [2021-09-14 00:13:29,374 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:29,375 INFO L470 AbstractCegarLoop]: Abstraction has 72 states and 81 transitions. [2021-09-14 00:13:29,375 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:29,375 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 81 transitions. [2021-09-14 00:13:29,375 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2021-09-14 00:13:29,375 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:29,375 INFO L513 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:29,376 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2021-09-14 00:13:29,376 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:29,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:29,376 INFO L82 PathProgramCache]: Analyzing trace with hash 133902980, now seen corresponding path program 1 times [2021-09-14 00:13:29,376 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:29,377 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2048674197] [2021-09-14 00:13:29,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:29,377 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:29,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:29,414 INFO L281 TraceCheckUtils]: 0: Hoare triple {1440#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {1440#true} is VALID [2021-09-14 00:13:29,415 INFO L281 TraceCheckUtils]: 1: Hoare triple {1440#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {1440#true} is VALID [2021-09-14 00:13:29,415 INFO L281 TraceCheckUtils]: 2: Hoare triple {1440#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {1442#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:29,416 INFO L281 TraceCheckUtils]: 3: Hoare triple {1442#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {1442#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:29,416 INFO L281 TraceCheckUtils]: 4: Hoare triple {1442#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {1442#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:29,416 INFO L281 TraceCheckUtils]: 5: Hoare triple {1442#(<= ULTIMATE.start_main_~n~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {1443#(<= ULTIMATE.start_binomialCoefficient_~n 0)} is VALID [2021-09-14 00:13:29,417 INFO L264 TraceCheckUtils]: 6: Hoare triple {1443#(<= ULTIMATE.start_binomialCoefficient_~n 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {1444#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:29,417 INFO L281 TraceCheckUtils]: 7: Hoare triple {1444#(<= |fact_#in~n| 0)} ~n := #in~n; {1445#(<= fact_~n 0)} is VALID [2021-09-14 00:13:29,417 INFO L281 TraceCheckUtils]: 8: Hoare triple {1445#(<= fact_~n 0)} assume !(~n <= 0); {1445#(<= fact_~n 0)} is VALID [2021-09-14 00:13:29,418 INFO L281 TraceCheckUtils]: 9: Hoare triple {1445#(<= fact_~n 0)} assume !(~n - 1 <= 2147483647); {1441#false} is VALID [2021-09-14 00:13:29,418 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2021-09-14 00:13:29,418 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:29,418 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2048674197] [2021-09-14 00:13:29,419 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2048674197] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:29,419 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:29,419 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2021-09-14 00:13:29,419 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1504912442] [2021-09-14 00:13:29,419 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2021-09-14 00:13:29,419 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:29,420 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:29,425 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:29,425 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2021-09-14 00:13:29,425 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:29,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2021-09-14 00:13:29,426 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2021-09-14 00:13:29,426 INFO L87 Difference]: Start difference. First operand 72 states and 81 transitions. Second operand has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:30,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:30,043 INFO L93 Difference]: Finished difference Result 209 states and 250 transitions. [2021-09-14 00:13:30,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2021-09-14 00:13:30,043 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2021-09-14 00:13:30,044 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:30,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:30,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 246 transitions. [2021-09-14 00:13:30,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:30,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 246 transitions. [2021-09-14 00:13:30,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 246 transitions. [2021-09-14 00:13:30,241 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 246 edges. 246 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:30,243 INFO L225 Difference]: With dead ends: 209 [2021-09-14 00:13:30,243 INFO L226 Difference]: Without dead ends: 143 [2021-09-14 00:13:30,244 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 20.74ms TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:13:30,245 INFO L928 BasicCegarLoop]: 20 mSDtfsCounter, 90 mSDsluCounter, 341 mSDsCounter, 0 mSdLazyCounter, 352 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 225.76ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 96 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 366 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 3.52ms SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 352 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 228.41ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:30,245 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [96 Valid, 85 Invalid, 366 Unknown, 0 Unchecked, 3.52ms Time], IncrementalHoareTripleChecker [14 Valid, 352 Invalid, 0 Unknown, 0 Unchecked, 228.41ms Time] [2021-09-14 00:13:30,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2021-09-14 00:13:30,297 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 107. [2021-09-14 00:13:30,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:30,298 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2021-09-14 00:13:30,299 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2021-09-14 00:13:30,299 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2021-09-14 00:13:30,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:30,303 INFO L93 Difference]: Finished difference Result 143 states and 173 transitions. [2021-09-14 00:13:30,303 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 173 transitions. [2021-09-14 00:13:30,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:30,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:30,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 143 states. [2021-09-14 00:13:30,304 INFO L87 Difference]: Start difference. First operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 143 states. [2021-09-14 00:13:30,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:30,308 INFO L93 Difference]: Finished difference Result 143 states and 173 transitions. [2021-09-14 00:13:30,308 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 173 transitions. [2021-09-14 00:13:30,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:30,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:30,309 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:30,309 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:30,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 91 states have internal predecessors, (111), 13 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2021-09-14 00:13:30,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 137 transitions. [2021-09-14 00:13:30,312 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 137 transitions. Word has length 10 [2021-09-14 00:13:30,312 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:30,312 INFO L470 AbstractCegarLoop]: Abstraction has 107 states and 137 transitions. [2021-09-14 00:13:30,313 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2021-09-14 00:13:30,313 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 137 transitions. [2021-09-14 00:13:30,313 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2021-09-14 00:13:30,313 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:30,313 INFO L513 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:30,313 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2021-09-14 00:13:30,314 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:30,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:30,314 INFO L82 PathProgramCache]: Analyzing trace with hash -2023579039, now seen corresponding path program 1 times [2021-09-14 00:13:30,314 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:30,315 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1517396581] [2021-09-14 00:13:30,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:30,315 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:30,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:30,352 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2021-09-14 00:13:30,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:30,358 INFO L281 TraceCheckUtils]: 0: Hoare triple {2120#true} ~n := #in~n; {2120#true} is VALID [2021-09-14 00:13:30,365 INFO L281 TraceCheckUtils]: 1: Hoare triple {2120#true} assume ~n <= 0;#res := 1; {2120#true} is VALID [2021-09-14 00:13:30,365 INFO L281 TraceCheckUtils]: 2: Hoare triple {2120#true} assume true; {2120#true} is VALID [2021-09-14 00:13:30,366 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {2120#true} {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} #111#return; {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:13:30,366 INFO L281 TraceCheckUtils]: 0: Hoare triple {2120#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {2120#true} is VALID [2021-09-14 00:13:30,367 INFO L281 TraceCheckUtils]: 1: Hoare triple {2120#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {2120#true} is VALID [2021-09-14 00:13:30,367 INFO L281 TraceCheckUtils]: 2: Hoare triple {2120#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {2120#true} is VALID [2021-09-14 00:13:30,367 INFO L281 TraceCheckUtils]: 3: Hoare triple {2120#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {2122#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:30,367 INFO L281 TraceCheckUtils]: 4: Hoare triple {2122#(<= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {2122#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:30,368 INFO L281 TraceCheckUtils]: 5: Hoare triple {2122#(<= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:13:30,368 INFO L264 TraceCheckUtils]: 6: Hoare triple {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {2120#true} is VALID [2021-09-14 00:13:30,368 INFO L281 TraceCheckUtils]: 7: Hoare triple {2120#true} ~n := #in~n; {2120#true} is VALID [2021-09-14 00:13:30,368 INFO L281 TraceCheckUtils]: 8: Hoare triple {2120#true} assume ~n <= 0;#res := 1; {2120#true} is VALID [2021-09-14 00:13:30,369 INFO L281 TraceCheckUtils]: 9: Hoare triple {2120#true} assume true; {2120#true} is VALID [2021-09-14 00:13:30,369 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {2120#true} {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} #111#return; {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:13:30,370 INFO L281 TraceCheckUtils]: 11: Hoare triple {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:13:30,373 INFO L264 TraceCheckUtils]: 12: Hoare triple {2123#(<= ULTIMATE.start_binomialCoefficient_~k 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {2128#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:30,373 INFO L281 TraceCheckUtils]: 13: Hoare triple {2128#(<= |fact_#in~n| 0)} ~n := #in~n; {2129#(<= fact_~n 0)} is VALID [2021-09-14 00:13:30,374 INFO L281 TraceCheckUtils]: 14: Hoare triple {2129#(<= fact_~n 0)} assume !(~n <= 0); {2129#(<= fact_~n 0)} is VALID [2021-09-14 00:13:30,374 INFO L281 TraceCheckUtils]: 15: Hoare triple {2129#(<= fact_~n 0)} assume !(~n - 1 <= 2147483647); {2121#false} is VALID [2021-09-14 00:13:30,374 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2021-09-14 00:13:30,375 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:30,375 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1517396581] [2021-09-14 00:13:30,375 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1517396581] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:30,375 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:30,376 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2021-09-14 00:13:30,376 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [281587132] [2021-09-14 00:13:30,376 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 16 [2021-09-14 00:13:30,377 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:30,377 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2021-09-14 00:13:30,386 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:30,386 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2021-09-14 00:13:30,386 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:30,387 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2021-09-14 00:13:30,387 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2021-09-14 00:13:30,387 INFO L87 Difference]: Start difference. First operand 107 states and 137 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2021-09-14 00:13:31,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:31,059 INFO L93 Difference]: Finished difference Result 286 states and 388 transitions. [2021-09-14 00:13:31,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2021-09-14 00:13:31,059 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 16 [2021-09-14 00:13:31,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:31,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2021-09-14 00:13:31,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 234 transitions. [2021-09-14 00:13:31,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2021-09-14 00:13:31,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 234 transitions. [2021-09-14 00:13:31,065 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 234 transitions. [2021-09-14 00:13:31,237 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:31,240 INFO L225 Difference]: With dead ends: 286 [2021-09-14 00:13:31,240 INFO L226 Difference]: Without dead ends: 185 [2021-09-14 00:13:31,241 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 20.90ms TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:13:31,242 INFO L928 BasicCegarLoop]: 19 mSDtfsCounter, 86 mSDsluCounter, 353 mSDsCounter, 0 mSdLazyCounter, 383 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 263.23ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 408 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 4.00ms SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 383 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 266.48ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:31,242 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 79 Invalid, 408 Unknown, 0 Unchecked, 4.00ms Time], IncrementalHoareTripleChecker [25 Valid, 383 Invalid, 0 Unknown, 0 Unchecked, 266.48ms Time] [2021-09-14 00:13:31,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2021-09-14 00:13:31,304 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 121. [2021-09-14 00:13:31,304 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:31,304 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:31,305 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:31,305 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:31,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:31,311 INFO L93 Difference]: Finished difference Result 185 states and 253 transitions. [2021-09-14 00:13:31,311 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 253 transitions. [2021-09-14 00:13:31,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:31,312 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:31,312 INFO L74 IsIncluded]: Start isIncluded. First operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) Second operand 185 states. [2021-09-14 00:13:31,313 INFO L87 Difference]: Start difference. First operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) Second operand 185 states. [2021-09-14 00:13:31,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:31,318 INFO L93 Difference]: Finished difference Result 185 states and 253 transitions. [2021-09-14 00:13:31,318 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 253 transitions. [2021-09-14 00:13:31,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:31,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:31,319 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:31,319 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:31,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 79 states have (on average 1.5063291139240507) internal successors, (119), 101 states have internal predecessors, (119), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 16 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:31,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 157 transitions. [2021-09-14 00:13:31,323 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 157 transitions. Word has length 16 [2021-09-14 00:13:31,323 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:31,323 INFO L470 AbstractCegarLoop]: Abstraction has 121 states and 157 transitions. [2021-09-14 00:13:31,323 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2021-09-14 00:13:31,323 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 157 transitions. [2021-09-14 00:13:31,324 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2021-09-14 00:13:31,324 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:31,324 INFO L513 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:31,324 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2021-09-14 00:13:31,324 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:31,325 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:31,325 INFO L82 PathProgramCache]: Analyzing trace with hash -282699610, now seen corresponding path program 1 times [2021-09-14 00:13:31,325 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:31,325 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [722007789] [2021-09-14 00:13:31,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:31,325 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:31,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:31,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2021-09-14 00:13:31,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:31,364 INFO L281 TraceCheckUtils]: 0: Hoare triple {3010#true} ~n := #in~n; {3010#true} is VALID [2021-09-14 00:13:31,364 INFO L281 TraceCheckUtils]: 1: Hoare triple {3010#true} assume ~n <= 0;#res := 1; {3010#true} is VALID [2021-09-14 00:13:31,365 INFO L281 TraceCheckUtils]: 2: Hoare triple {3010#true} assume true; {3010#true} is VALID [2021-09-14 00:13:31,365 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {3010#true} {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #111#return; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,365 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2021-09-14 00:13:31,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:31,370 INFO L281 TraceCheckUtils]: 0: Hoare triple {3010#true} ~n := #in~n; {3010#true} is VALID [2021-09-14 00:13:31,370 INFO L281 TraceCheckUtils]: 1: Hoare triple {3010#true} assume ~n <= 0;#res := 1; {3010#true} is VALID [2021-09-14 00:13:31,370 INFO L281 TraceCheckUtils]: 2: Hoare triple {3010#true} assume true; {3010#true} is VALID [2021-09-14 00:13:31,371 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {3010#true} {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #113#return; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,371 INFO L281 TraceCheckUtils]: 0: Hoare triple {3010#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {3010#true} is VALID [2021-09-14 00:13:31,371 INFO L281 TraceCheckUtils]: 1: Hoare triple {3010#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {3010#true} is VALID [2021-09-14 00:13:31,371 INFO L281 TraceCheckUtils]: 2: Hoare triple {3010#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {3012#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:31,372 INFO L281 TraceCheckUtils]: 3: Hoare triple {3012#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {3013#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:31,372 INFO L281 TraceCheckUtils]: 4: Hoare triple {3013#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} assume !!(main_~k~0 <= main_~x~0); {3013#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:31,373 INFO L281 TraceCheckUtils]: 5: Hoare triple {3013#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,373 INFO L264 TraceCheckUtils]: 6: Hoare triple {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {3010#true} is VALID [2021-09-14 00:13:31,373 INFO L281 TraceCheckUtils]: 7: Hoare triple {3010#true} ~n := #in~n; {3010#true} is VALID [2021-09-14 00:13:31,373 INFO L281 TraceCheckUtils]: 8: Hoare triple {3010#true} assume ~n <= 0;#res := 1; {3010#true} is VALID [2021-09-14 00:13:31,373 INFO L281 TraceCheckUtils]: 9: Hoare triple {3010#true} assume true; {3010#true} is VALID [2021-09-14 00:13:31,374 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {3010#true} {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #111#return; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,374 INFO L281 TraceCheckUtils]: 11: Hoare triple {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,374 INFO L264 TraceCheckUtils]: 12: Hoare triple {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {3010#true} is VALID [2021-09-14 00:13:31,374 INFO L281 TraceCheckUtils]: 13: Hoare triple {3010#true} ~n := #in~n; {3010#true} is VALID [2021-09-14 00:13:31,375 INFO L281 TraceCheckUtils]: 14: Hoare triple {3010#true} assume ~n <= 0;#res := 1; {3010#true} is VALID [2021-09-14 00:13:31,375 INFO L281 TraceCheckUtils]: 15: Hoare triple {3010#true} assume true; {3010#true} is VALID [2021-09-14 00:13:31,375 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {3010#true} {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #113#return; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,376 INFO L281 TraceCheckUtils]: 17: Hoare triple {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:31,376 INFO L281 TraceCheckUtils]: 18: Hoare triple {3014#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume !(binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647); {3011#false} is VALID [2021-09-14 00:13:31,376 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2021-09-14 00:13:31,376 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:31,377 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [722007789] [2021-09-14 00:13:31,377 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [722007789] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:31,377 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:31,377 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2021-09-14 00:13:31,377 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [812911066] [2021-09-14 00:13:31,378 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2021-09-14 00:13:31,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:31,378 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:31,387 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:31,387 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2021-09-14 00:13:31,388 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:31,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2021-09-14 00:13:31,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:31,388 INFO L87 Difference]: Start difference. First operand 121 states and 157 transitions. Second operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:31,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:31,951 INFO L93 Difference]: Finished difference Result 181 states and 207 transitions. [2021-09-14 00:13:31,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2021-09-14 00:13:31,951 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2021-09-14 00:13:31,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:31,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:31,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 188 transitions. [2021-09-14 00:13:31,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:31,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 188 transitions. [2021-09-14 00:13:31,955 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 188 transitions. [2021-09-14 00:13:32,103 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:32,106 INFO L225 Difference]: With dead ends: 181 [2021-09-14 00:13:32,106 INFO L226 Difference]: Without dead ends: 180 [2021-09-14 00:13:32,106 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 31.35ms TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:13:32,107 INFO L928 BasicCegarLoop]: 25 mSDtfsCounter, 141 mSDsluCounter, 290 mSDsCounter, 0 mSdLazyCounter, 294 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 195.74ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 147 SdHoareTripleChecker+Valid, 73 SdHoareTripleChecker+Invalid, 315 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.67ms SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 294 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 197.51ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:32,107 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [147 Valid, 73 Invalid, 315 Unknown, 0 Unchecked, 2.67ms Time], IncrementalHoareTripleChecker [21 Valid, 294 Invalid, 0 Unknown, 0 Unchecked, 197.51ms Time] [2021-09-14 00:13:32,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2021-09-14 00:13:32,187 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 123. [2021-09-14 00:13:32,188 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:32,188 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:32,189 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:32,189 INFO L87 Difference]: Start difference. First operand 180 states. Second operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:32,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:32,193 INFO L93 Difference]: Finished difference Result 180 states and 206 transitions. [2021-09-14 00:13:32,193 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 206 transitions. [2021-09-14 00:13:32,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:32,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:32,195 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 180 states. [2021-09-14 00:13:32,195 INFO L87 Difference]: Start difference. First operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 180 states. [2021-09-14 00:13:32,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:32,199 INFO L93 Difference]: Finished difference Result 180 states and 206 transitions. [2021-09-14 00:13:32,199 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 206 transitions. [2021-09-14 00:13:32,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:32,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:32,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:32,200 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:32,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 81 states have (on average 1.4938271604938271) internal successors, (121), 102 states have internal predecessors, (121), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:32,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 159 transitions. [2021-09-14 00:13:32,203 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 159 transitions. Word has length 19 [2021-09-14 00:13:32,203 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:32,203 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 159 transitions. [2021-09-14 00:13:32,203 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:32,203 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 159 transitions. [2021-09-14 00:13:32,203 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2021-09-14 00:13:32,203 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:32,203 INFO L513 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:32,204 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2021-09-14 00:13:32,204 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:32,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:32,204 INFO L82 PathProgramCache]: Analyzing trace with hash -173753234, now seen corresponding path program 1 times [2021-09-14 00:13:32,204 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:32,204 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [204572575] [2021-09-14 00:13:32,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:32,204 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:32,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:32,259 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2021-09-14 00:13:32,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:32,268 INFO L281 TraceCheckUtils]: 0: Hoare triple {3766#true} ~n := #in~n; {3766#true} is VALID [2021-09-14 00:13:32,269 INFO L281 TraceCheckUtils]: 1: Hoare triple {3766#true} assume ~n <= 0;#res := 1; {3766#true} is VALID [2021-09-14 00:13:32,269 INFO L281 TraceCheckUtils]: 2: Hoare triple {3766#true} assume true; {3766#true} is VALID [2021-09-14 00:13:32,270 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {3766#true} {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} #111#return; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,270 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2021-09-14 00:13:32,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:32,280 INFO L281 TraceCheckUtils]: 0: Hoare triple {3766#true} ~n := #in~n; {3766#true} is VALID [2021-09-14 00:13:32,280 INFO L281 TraceCheckUtils]: 1: Hoare triple {3766#true} assume ~n <= 0;#res := 1; {3766#true} is VALID [2021-09-14 00:13:32,280 INFO L281 TraceCheckUtils]: 2: Hoare triple {3766#true} assume true; {3766#true} is VALID [2021-09-14 00:13:32,282 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {3766#true} {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} #113#return; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,282 INFO L281 TraceCheckUtils]: 0: Hoare triple {3766#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {3766#true} is VALID [2021-09-14 00:13:32,282 INFO L281 TraceCheckUtils]: 1: Hoare triple {3766#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {3766#true} is VALID [2021-09-14 00:13:32,283 INFO L281 TraceCheckUtils]: 2: Hoare triple {3766#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {3768#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:32,283 INFO L281 TraceCheckUtils]: 3: Hoare triple {3768#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {3769#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:32,284 INFO L281 TraceCheckUtils]: 4: Hoare triple {3769#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {3769#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:32,284 INFO L281 TraceCheckUtils]: 5: Hoare triple {3769#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,284 INFO L264 TraceCheckUtils]: 6: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {3766#true} is VALID [2021-09-14 00:13:32,284 INFO L281 TraceCheckUtils]: 7: Hoare triple {3766#true} ~n := #in~n; {3766#true} is VALID [2021-09-14 00:13:32,285 INFO L281 TraceCheckUtils]: 8: Hoare triple {3766#true} assume ~n <= 0;#res := 1; {3766#true} is VALID [2021-09-14 00:13:32,285 INFO L281 TraceCheckUtils]: 9: Hoare triple {3766#true} assume true; {3766#true} is VALID [2021-09-14 00:13:32,285 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {3766#true} {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} #111#return; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,286 INFO L281 TraceCheckUtils]: 11: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,286 INFO L264 TraceCheckUtils]: 12: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {3766#true} is VALID [2021-09-14 00:13:32,286 INFO L281 TraceCheckUtils]: 13: Hoare triple {3766#true} ~n := #in~n; {3766#true} is VALID [2021-09-14 00:13:32,286 INFO L281 TraceCheckUtils]: 14: Hoare triple {3766#true} assume ~n <= 0;#res := 1; {3766#true} is VALID [2021-09-14 00:13:32,288 INFO L281 TraceCheckUtils]: 15: Hoare triple {3766#true} assume true; {3766#true} is VALID [2021-09-14 00:13:32,289 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {3766#true} {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} #113#return; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,289 INFO L281 TraceCheckUtils]: 17: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,289 INFO L281 TraceCheckUtils]: 18: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:32,290 INFO L281 TraceCheckUtils]: 19: Hoare triple {3770#(<= ULTIMATE.start_binomialCoefficient_~k ULTIMATE.start_binomialCoefficient_~n)} assume !(binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648); {3767#false} is VALID [2021-09-14 00:13:32,290 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2021-09-14 00:13:32,290 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:32,291 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [204572575] [2021-09-14 00:13:32,291 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [204572575] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:32,291 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:32,291 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2021-09-14 00:13:32,291 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [482788962] [2021-09-14 00:13:32,291 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 20 [2021-09-14 00:13:32,292 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:32,292 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:32,302 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:32,303 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2021-09-14 00:13:32,303 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:32,303 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2021-09-14 00:13:32,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:32,304 INFO L87 Difference]: Start difference. First operand 123 states and 159 transitions. Second operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:32,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:32,830 INFO L93 Difference]: Finished difference Result 150 states and 174 transitions. [2021-09-14 00:13:32,830 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2021-09-14 00:13:32,831 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 20 [2021-09-14 00:13:32,831 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:32,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:32,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 148 transitions. [2021-09-14 00:13:32,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:32,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 148 transitions. [2021-09-14 00:13:32,834 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 148 transitions. [2021-09-14 00:13:32,938 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:32,940 INFO L225 Difference]: With dead ends: 150 [2021-09-14 00:13:32,940 INFO L226 Difference]: Without dead ends: 148 [2021-09-14 00:13:32,940 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 35.27ms TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:13:32,941 INFO L928 BasicCegarLoop]: 20 mSDtfsCounter, 162 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 217 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 186.04ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 165 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 244 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.63ms SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 217 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 187.59ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:32,941 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [165 Valid, 50 Invalid, 244 Unknown, 0 Unchecked, 2.63ms Time], IncrementalHoareTripleChecker [27 Valid, 217 Invalid, 0 Unknown, 0 Unchecked, 187.59ms Time] [2021-09-14 00:13:32,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2021-09-14 00:13:33,041 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 121. [2021-09-14 00:13:33,041 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:33,042 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:33,042 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:33,043 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:33,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:33,046 INFO L93 Difference]: Finished difference Result 148 states and 170 transitions. [2021-09-14 00:13:33,046 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 170 transitions. [2021-09-14 00:13:33,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:33,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:33,047 INFO L74 IsIncluded]: Start isIncluded. First operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 148 states. [2021-09-14 00:13:33,047 INFO L87 Difference]: Start difference. First operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 148 states. [2021-09-14 00:13:33,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:33,051 INFO L93 Difference]: Finished difference Result 148 states and 170 transitions. [2021-09-14 00:13:33,051 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 170 transitions. [2021-09-14 00:13:33,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:33,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:33,051 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:33,052 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:33,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 81 states have (on average 1.4444444444444444) internal successors, (117), 100 states have internal predecessors, (117), 19 states have call successors, (19), 3 states have call predecessors, (19), 3 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2021-09-14 00:13:33,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 155 transitions. [2021-09-14 00:13:33,055 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 155 transitions. Word has length 20 [2021-09-14 00:13:33,055 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:33,055 INFO L470 AbstractCegarLoop]: Abstraction has 121 states and 155 transitions. [2021-09-14 00:13:33,055 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 1 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:33,055 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 155 transitions. [2021-09-14 00:13:33,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2021-09-14 00:13:33,056 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:33,056 INFO L513 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:33,056 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2021-09-14 00:13:33,056 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:33,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:33,057 INFO L82 PathProgramCache]: Analyzing trace with hash -482951234, now seen corresponding path program 1 times [2021-09-14 00:13:33,057 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:33,057 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [280088374] [2021-09-14 00:13:33,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:33,057 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:33,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:33,104 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2021-09-14 00:13:33,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:33,108 INFO L281 TraceCheckUtils]: 0: Hoare triple {4420#true} ~n := #in~n; {4420#true} is VALID [2021-09-14 00:13:33,109 INFO L281 TraceCheckUtils]: 1: Hoare triple {4420#true} assume ~n <= 0;#res := 1; {4420#true} is VALID [2021-09-14 00:13:33,109 INFO L281 TraceCheckUtils]: 2: Hoare triple {4420#true} assume true; {4420#true} is VALID [2021-09-14 00:13:33,109 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {4420#true} {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #111#return; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,109 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2021-09-14 00:13:33,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:33,114 INFO L281 TraceCheckUtils]: 0: Hoare triple {4420#true} ~n := #in~n; {4420#true} is VALID [2021-09-14 00:13:33,114 INFO L281 TraceCheckUtils]: 1: Hoare triple {4420#true} assume ~n <= 0;#res := 1; {4420#true} is VALID [2021-09-14 00:13:33,114 INFO L281 TraceCheckUtils]: 2: Hoare triple {4420#true} assume true; {4420#true} is VALID [2021-09-14 00:13:33,115 INFO L276 TraceCheckUtils]: 3: Hoare quadruple {4420#true} {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #113#return; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,115 INFO L281 TraceCheckUtils]: 0: Hoare triple {4420#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {4420#true} is VALID [2021-09-14 00:13:33,115 INFO L281 TraceCheckUtils]: 1: Hoare triple {4420#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {4420#true} is VALID [2021-09-14 00:13:33,115 INFO L281 TraceCheckUtils]: 2: Hoare triple {4420#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {4422#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:33,116 INFO L281 TraceCheckUtils]: 3: Hoare triple {4422#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {4423#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:33,116 INFO L281 TraceCheckUtils]: 4: Hoare triple {4423#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} assume !!(main_~k~0 <= main_~x~0); {4423#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:33,117 INFO L281 TraceCheckUtils]: 5: Hoare triple {4423#(<= ULTIMATE.start_main_~n~0 ULTIMATE.start_main_~k~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,117 INFO L264 TraceCheckUtils]: 6: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {4420#true} is VALID [2021-09-14 00:13:33,117 INFO L281 TraceCheckUtils]: 7: Hoare triple {4420#true} ~n := #in~n; {4420#true} is VALID [2021-09-14 00:13:33,117 INFO L281 TraceCheckUtils]: 8: Hoare triple {4420#true} assume ~n <= 0;#res := 1; {4420#true} is VALID [2021-09-14 00:13:33,117 INFO L281 TraceCheckUtils]: 9: Hoare triple {4420#true} assume true; {4420#true} is VALID [2021-09-14 00:13:33,118 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {4420#true} {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #111#return; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,118 INFO L281 TraceCheckUtils]: 11: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,118 INFO L264 TraceCheckUtils]: 12: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {4420#true} is VALID [2021-09-14 00:13:33,118 INFO L281 TraceCheckUtils]: 13: Hoare triple {4420#true} ~n := #in~n; {4420#true} is VALID [2021-09-14 00:13:33,119 INFO L281 TraceCheckUtils]: 14: Hoare triple {4420#true} assume ~n <= 0;#res := 1; {4420#true} is VALID [2021-09-14 00:13:33,119 INFO L281 TraceCheckUtils]: 15: Hoare triple {4420#true} assume true; {4420#true} is VALID [2021-09-14 00:13:33,119 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {4420#true} {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} #113#return; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,120 INFO L281 TraceCheckUtils]: 17: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,120 INFO L281 TraceCheckUtils]: 18: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,120 INFO L281 TraceCheckUtils]: 19: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} is VALID [2021-09-14 00:13:33,121 INFO L264 TraceCheckUtils]: 20: Hoare triple {4424#(<= ULTIMATE.start_binomialCoefficient_~n ULTIMATE.start_binomialCoefficient_~k)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {4433#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:33,121 INFO L281 TraceCheckUtils]: 21: Hoare triple {4433#(<= |fact_#in~n| 0)} ~n := #in~n; {4434#(<= fact_~n 0)} is VALID [2021-09-14 00:13:33,122 INFO L281 TraceCheckUtils]: 22: Hoare triple {4434#(<= fact_~n 0)} assume !(~n <= 0); {4434#(<= fact_~n 0)} is VALID [2021-09-14 00:13:33,122 INFO L281 TraceCheckUtils]: 23: Hoare triple {4434#(<= fact_~n 0)} assume !(~n - 1 <= 2147483647); {4421#false} is VALID [2021-09-14 00:13:33,122 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2021-09-14 00:13:33,123 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:33,123 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [280088374] [2021-09-14 00:13:33,123 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [280088374] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:33,123 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:33,123 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2021-09-14 00:13:33,123 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216829229] [2021-09-14 00:13:33,124 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2021-09-14 00:13:33,124 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:33,124 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:33,137 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:33,138 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2021-09-14 00:13:33,138 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:33,138 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2021-09-14 00:13:33,138 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2021-09-14 00:13:33,138 INFO L87 Difference]: Start difference. First operand 121 states and 155 transitions. Second operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:33,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:33,937 INFO L93 Difference]: Finished difference Result 291 states and 363 transitions. [2021-09-14 00:13:33,937 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2021-09-14 00:13:33,937 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2021-09-14 00:13:33,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:33,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:33,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 272 transitions. [2021-09-14 00:13:33,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:33,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 272 transitions. [2021-09-14 00:13:33,944 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 272 transitions. [2021-09-14 00:13:34,117 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 272 edges. 272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:34,120 INFO L225 Difference]: With dead ends: 291 [2021-09-14 00:13:34,120 INFO L226 Difference]: Without dead ends: 181 [2021-09-14 00:13:34,120 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 44.84ms TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2021-09-14 00:13:34,121 INFO L928 BasicCegarLoop]: 22 mSDtfsCounter, 161 mSDsluCounter, 378 mSDsCounter, 0 mSdLazyCounter, 389 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 262.65ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 172 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 417 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 5.43ms SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 389 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 265.14ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:34,121 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [172 Valid, 101 Invalid, 417 Unknown, 0 Unchecked, 5.43ms Time], IncrementalHoareTripleChecker [28 Valid, 389 Invalid, 0 Unknown, 0 Unchecked, 265.14ms Time] [2021-09-14 00:13:34,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 181 states. [2021-09-14 00:13:34,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 181 to 127. [2021-09-14 00:13:34,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:34,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 181 states. Second operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) [2021-09-14 00:13:34,213 INFO L74 IsIncluded]: Start isIncluded. First operand 181 states. Second operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) [2021-09-14 00:13:34,213 INFO L87 Difference]: Start difference. First operand 181 states. Second operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) [2021-09-14 00:13:34,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:34,217 INFO L93 Difference]: Finished difference Result 181 states and 219 transitions. [2021-09-14 00:13:34,217 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 219 transitions. [2021-09-14 00:13:34,218 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:34,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:34,219 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) Second operand 181 states. [2021-09-14 00:13:34,219 INFO L87 Difference]: Start difference. First operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) Second operand 181 states. [2021-09-14 00:13:34,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:34,223 INFO L93 Difference]: Finished difference Result 181 states and 219 transitions. [2021-09-14 00:13:34,223 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 219 transitions. [2021-09-14 00:13:34,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:34,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:34,224 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:34,224 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:34,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 85 states have (on average 1.423529411764706) internal successors, (121), 105 states have internal predecessors, (121), 20 states have call successors, (20), 4 states have call predecessors, (20), 4 states have return successors, (20), 17 states have call predecessors, (20), 20 states have call successors, (20) [2021-09-14 00:13:34,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 161 transitions. [2021-09-14 00:13:34,228 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 161 transitions. Word has length 24 [2021-09-14 00:13:34,228 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:34,228 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 161 transitions. [2021-09-14 00:13:34,228 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 6 states have internal predecessors, (16), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2021-09-14 00:13:34,230 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 161 transitions. [2021-09-14 00:13:34,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2021-09-14 00:13:34,231 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:34,231 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:34,231 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2021-09-14 00:13:34,231 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:34,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:34,232 INFO L82 PathProgramCache]: Analyzing trace with hash 539716203, now seen corresponding path program 1 times [2021-09-14 00:13:34,232 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:34,232 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60111592] [2021-09-14 00:13:34,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:34,232 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:34,239 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:34,248 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1166897608] [2021-09-14 00:13:34,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:34,249 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:34,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:34,251 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:34,259 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2021-09-14 00:13:34,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:34,292 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 9 conjunts are in the unsatisfiable core [2021-09-14 00:13:34,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:34,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:34,533 INFO L281 TraceCheckUtils]: 0: Hoare triple {5325#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {5325#true} is VALID [2021-09-14 00:13:34,533 INFO L281 TraceCheckUtils]: 1: Hoare triple {5325#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {5325#true} is VALID [2021-09-14 00:13:34,533 INFO L281 TraceCheckUtils]: 2: Hoare triple {5325#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {5325#true} is VALID [2021-09-14 00:13:34,533 INFO L281 TraceCheckUtils]: 3: Hoare triple {5325#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {5325#true} is VALID [2021-09-14 00:13:34,533 INFO L281 TraceCheckUtils]: 4: Hoare triple {5325#true} assume !!(main_~k~0 <= main_~x~0); {5325#true} is VALID [2021-09-14 00:13:34,534 INFO L281 TraceCheckUtils]: 5: Hoare triple {5325#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {5325#true} is VALID [2021-09-14 00:13:34,534 INFO L264 TraceCheckUtils]: 6: Hoare triple {5325#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {5325#true} is VALID [2021-09-14 00:13:34,534 INFO L281 TraceCheckUtils]: 7: Hoare triple {5325#true} ~n := #in~n; {5325#true} is VALID [2021-09-14 00:13:34,534 INFO L281 TraceCheckUtils]: 8: Hoare triple {5325#true} assume ~n <= 0;#res := 1; {5325#true} is VALID [2021-09-14 00:13:34,534 INFO L281 TraceCheckUtils]: 9: Hoare triple {5325#true} assume true; {5325#true} is VALID [2021-09-14 00:13:34,535 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {5325#true} {5325#true} #111#return; {5325#true} is VALID [2021-09-14 00:13:34,535 INFO L281 TraceCheckUtils]: 11: Hoare triple {5325#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {5325#true} is VALID [2021-09-14 00:13:34,535 INFO L264 TraceCheckUtils]: 12: Hoare triple {5325#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {5325#true} is VALID [2021-09-14 00:13:34,535 INFO L281 TraceCheckUtils]: 13: Hoare triple {5325#true} ~n := #in~n; {5325#true} is VALID [2021-09-14 00:13:34,535 INFO L281 TraceCheckUtils]: 14: Hoare triple {5325#true} assume ~n <= 0;#res := 1; {5372#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:34,545 INFO L281 TraceCheckUtils]: 15: Hoare triple {5372#(= |fact_#res| 1)} assume true; {5372#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:34,546 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {5372#(= |fact_#res| 1)} {5325#true} #113#return; {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:13:34,546 INFO L281 TraceCheckUtils]: 17: Hoare triple {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:13:34,546 INFO L281 TraceCheckUtils]: 18: Hoare triple {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:13:34,546 INFO L281 TraceCheckUtils]: 19: Hoare triple {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:13:34,547 INFO L264 TraceCheckUtils]: 20: Hoare triple {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {5325#true} is VALID [2021-09-14 00:13:34,547 INFO L281 TraceCheckUtils]: 21: Hoare triple {5325#true} ~n := #in~n; {5325#true} is VALID [2021-09-14 00:13:34,547 INFO L281 TraceCheckUtils]: 22: Hoare triple {5325#true} assume ~n <= 0;#res := 1; {5372#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:34,547 INFO L281 TraceCheckUtils]: 23: Hoare triple {5372#(= |fact_#res| 1)} assume true; {5372#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:34,548 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {5372#(= |fact_#res| 1)} {5379#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} #115#return; {5404#(and (= |ULTIMATE.start_binomialCoefficient_#t~ret3| 1) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} is VALID [2021-09-14 00:13:34,549 INFO L281 TraceCheckUtils]: 25: Hoare triple {5404#(and (= |ULTIMATE.start_binomialCoefficient_#t~ret3| 1) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {5404#(and (= |ULTIMATE.start_binomialCoefficient_#t~ret3| 1) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} is VALID [2021-09-14 00:13:34,549 INFO L281 TraceCheckUtils]: 26: Hoare triple {5404#(and (= |ULTIMATE.start_binomialCoefficient_#t~ret3| 1) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} assume !(binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647); {5326#false} is VALID [2021-09-14 00:13:34,549 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2021-09-14 00:13:34,549 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:34,550 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:34,550 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [60111592] [2021-09-14 00:13:34,550 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:34,550 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1166897608] [2021-09-14 00:13:34,550 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1166897608] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:34,550 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:34,550 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2021-09-14 00:13:34,551 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1009250588] [2021-09-14 00:13:34,551 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2021-09-14 00:13:34,551 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:34,552 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2021-09-14 00:13:34,565 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:34,566 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2021-09-14 00:13:34,566 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:34,566 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2021-09-14 00:13:34,567 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:34,567 INFO L87 Difference]: Start difference. First operand 127 states and 161 transitions. Second operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2021-09-14 00:13:35,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:35,020 INFO L93 Difference]: Finished difference Result 203 states and 276 transitions. [2021-09-14 00:13:35,021 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2021-09-14 00:13:35,021 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2021-09-14 00:13:35,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:35,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2021-09-14 00:13:35,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 133 transitions. [2021-09-14 00:13:35,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2021-09-14 00:13:35,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 133 transitions. [2021-09-14 00:13:35,034 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 133 transitions. [2021-09-14 00:13:35,140 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:35,143 INFO L225 Difference]: With dead ends: 203 [2021-09-14 00:13:35,143 INFO L226 Difference]: Without dead ends: 199 [2021-09-14 00:13:35,144 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 12.55ms TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:35,144 INFO L928 BasicCegarLoop]: 16 mSDtfsCounter, 33 mSDsluCounter, 200 mSDsCounter, 0 mSdLazyCounter, 249 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 163.28ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 56 SdHoareTripleChecker+Invalid, 254 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.98ms SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 249 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 164.76ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:35,144 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 56 Invalid, 254 Unknown, 0 Unchecked, 1.98ms Time], IncrementalHoareTripleChecker [5 Valid, 249 Invalid, 0 Unknown, 0 Unchecked, 164.76ms Time] [2021-09-14 00:13:35,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 199 states. [2021-09-14 00:13:35,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 199 to 157. [2021-09-14 00:13:35,226 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:35,226 INFO L82 GeneralOperation]: Start isEquivalent. First operand 199 states. Second operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) [2021-09-14 00:13:35,226 INFO L74 IsIncluded]: Start isIncluded. First operand 199 states. Second operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) [2021-09-14 00:13:35,227 INFO L87 Difference]: Start difference. First operand 199 states. Second operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) [2021-09-14 00:13:35,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:35,231 INFO L93 Difference]: Finished difference Result 199 states and 268 transitions. [2021-09-14 00:13:35,232 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 268 transitions. [2021-09-14 00:13:35,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:35,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:35,233 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) Second operand 199 states. [2021-09-14 00:13:35,233 INFO L87 Difference]: Start difference. First operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) Second operand 199 states. [2021-09-14 00:13:35,237 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:35,237 INFO L93 Difference]: Finished difference Result 199 states and 268 transitions. [2021-09-14 00:13:35,237 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 268 transitions. [2021-09-14 00:13:35,238 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:35,238 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:35,238 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:35,238 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:35,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 110 states have (on average 1.3636363636363635) internal successors, (150), 127 states have internal predecessors, (150), 24 states have call successors, (24), 4 states have call predecessors, (24), 5 states have return successors, (42), 25 states have call predecessors, (42), 24 states have call successors, (42) [2021-09-14 00:13:35,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 216 transitions. [2021-09-14 00:13:35,242 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 216 transitions. Word has length 27 [2021-09-14 00:13:35,242 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:35,242 INFO L470 AbstractCegarLoop]: Abstraction has 157 states and 216 transitions. [2021-09-14 00:13:35,243 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2021-09-14 00:13:35,243 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 216 transitions. [2021-09-14 00:13:35,243 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2021-09-14 00:13:35,243 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:35,243 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:35,267 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:35,460 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:35,460 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:35,461 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:35,461 INFO L82 PathProgramCache]: Analyzing trace with hash -1023768851, now seen corresponding path program 1 times [2021-09-14 00:13:35,461 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:35,461 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [591517333] [2021-09-14 00:13:35,461 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:35,461 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:35,467 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:35,467 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2115400531] [2021-09-14 00:13:35,467 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:35,467 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:35,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:35,473 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:35,477 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2021-09-14 00:13:35,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:35,500 INFO L263 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 9 conjunts are in the unsatisfiable core [2021-09-14 00:13:35,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:35,507 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:35,776 INFO L281 TraceCheckUtils]: 0: Hoare triple {6244#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {6244#true} is VALID [2021-09-14 00:13:35,776 INFO L281 TraceCheckUtils]: 1: Hoare triple {6244#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {6244#true} is VALID [2021-09-14 00:13:35,776 INFO L281 TraceCheckUtils]: 2: Hoare triple {6244#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {6244#true} is VALID [2021-09-14 00:13:35,777 INFO L281 TraceCheckUtils]: 3: Hoare triple {6244#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {6244#true} is VALID [2021-09-14 00:13:35,777 INFO L281 TraceCheckUtils]: 4: Hoare triple {6244#true} assume !!(main_~k~0 <= main_~x~0); {6244#true} is VALID [2021-09-14 00:13:35,777 INFO L281 TraceCheckUtils]: 5: Hoare triple {6244#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {6244#true} is VALID [2021-09-14 00:13:35,777 INFO L264 TraceCheckUtils]: 6: Hoare triple {6244#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {6244#true} is VALID [2021-09-14 00:13:35,777 INFO L281 TraceCheckUtils]: 7: Hoare triple {6244#true} ~n := #in~n; {6244#true} is VALID [2021-09-14 00:13:35,785 INFO L281 TraceCheckUtils]: 8: Hoare triple {6244#true} assume ~n <= 0;#res := 1; {6273#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:35,785 INFO L281 TraceCheckUtils]: 9: Hoare triple {6273#(= |fact_#res| 1)} assume true; {6273#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:35,786 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {6273#(= |fact_#res| 1)} {6244#true} #111#return; {6280#(= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1)} is VALID [2021-09-14 00:13:35,786 INFO L281 TraceCheckUtils]: 11: Hoare triple {6280#(= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {6280#(= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1)} is VALID [2021-09-14 00:13:35,786 INFO L264 TraceCheckUtils]: 12: Hoare triple {6280#(= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {6244#true} is VALID [2021-09-14 00:13:35,787 INFO L281 TraceCheckUtils]: 13: Hoare triple {6244#true} ~n := #in~n; {6244#true} is VALID [2021-09-14 00:13:35,787 INFO L281 TraceCheckUtils]: 14: Hoare triple {6244#true} assume ~n <= 0;#res := 1; {6293#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:13:35,787 INFO L281 TraceCheckUtils]: 15: Hoare triple {6293#(<= 1 |fact_#res|)} assume true; {6293#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:13:35,788 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {6293#(<= 1 |fact_#res|)} {6280#(= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1)} #113#return; {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,789 INFO L281 TraceCheckUtils]: 17: Hoare triple {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,789 INFO L281 TraceCheckUtils]: 18: Hoare triple {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,789 INFO L281 TraceCheckUtils]: 19: Hoare triple {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,790 INFO L264 TraceCheckUtils]: 20: Hoare triple {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {6244#true} is VALID [2021-09-14 00:13:35,790 INFO L281 TraceCheckUtils]: 21: Hoare triple {6244#true} ~n := #in~n; {6244#true} is VALID [2021-09-14 00:13:35,790 INFO L281 TraceCheckUtils]: 22: Hoare triple {6244#true} assume ~n <= 0;#res := 1; {6293#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:13:35,790 INFO L281 TraceCheckUtils]: 23: Hoare triple {6293#(<= 1 |fact_#res|)} assume true; {6293#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:13:35,791 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {6293#(<= 1 |fact_#res|)} {6300#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} #115#return; {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,792 INFO L281 TraceCheckUtils]: 25: Hoare triple {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,792 INFO L281 TraceCheckUtils]: 26: Hoare triple {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,793 INFO L281 TraceCheckUtils]: 27: Hoare triple {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} is VALID [2021-09-14 00:13:35,794 INFO L281 TraceCheckUtils]: 28: Hoare triple {6325#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (= |ULTIMATE.start_binomialCoefficient_#t~ret1| 1))} assume !((if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647); {6245#false} is VALID [2021-09-14 00:13:35,794 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2021-09-14 00:13:35,795 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:13:36,413 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:36,413 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [591517333] [2021-09-14 00:13:36,413 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:36,413 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2115400531] [2021-09-14 00:13:36,413 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2115400531] provided 0 perfect and 1 imperfect interpolant sequences [2021-09-14 00:13:36,413 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2021-09-14 00:13:36,413 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2021-09-14 00:13:36,413 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [920456760] [2021-09-14 00:13:36,414 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 29 [2021-09-14 00:13:36,414 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:36,414 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2021-09-14 00:13:36,433 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:36,433 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2021-09-14 00:13:36,433 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:36,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2021-09-14 00:13:36,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:13:36,433 INFO L87 Difference]: Start difference. First operand 157 states and 216 transitions. Second operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2021-09-14 00:13:37,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:37,286 INFO L93 Difference]: Finished difference Result 267 states and 364 transitions. [2021-09-14 00:13:37,286 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2021-09-14 00:13:37,286 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 29 [2021-09-14 00:13:37,286 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:37,286 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2021-09-14 00:13:37,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 169 transitions. [2021-09-14 00:13:37,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2021-09-14 00:13:37,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 169 transitions. [2021-09-14 00:13:37,289 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 169 transitions. [2021-09-14 00:13:37,419 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:37,423 INFO L225 Difference]: With dead ends: 267 [2021-09-14 00:13:37,424 INFO L226 Difference]: Without dead ends: 263 [2021-09-14 00:13:37,424 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 92.20ms TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:13:37,424 INFO L928 BasicCegarLoop]: 20 mSDtfsCounter, 91 mSDsluCounter, 236 mSDsCounter, 0 mSdLazyCounter, 306 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 333.05ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 74 SdHoareTripleChecker+Invalid, 318 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.44ms SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 306 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 334.85ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:37,425 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 74 Invalid, 318 Unknown, 0 Unchecked, 2.44ms Time], IncrementalHoareTripleChecker [12 Valid, 306 Invalid, 0 Unknown, 0 Unchecked, 334.85ms Time] [2021-09-14 00:13:37,425 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2021-09-14 00:13:37,524 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 196. [2021-09-14 00:13:37,524 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:37,525 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) [2021-09-14 00:13:37,525 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) [2021-09-14 00:13:37,525 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) [2021-09-14 00:13:37,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:37,532 INFO L93 Difference]: Finished difference Result 263 states and 356 transitions. [2021-09-14 00:13:37,532 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 356 transitions. [2021-09-14 00:13:37,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:37,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:37,533 INFO L74 IsIncluded]: Start isIncluded. First operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) Second operand 263 states. [2021-09-14 00:13:37,533 INFO L87 Difference]: Start difference. First operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) Second operand 263 states. [2021-09-14 00:13:37,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:37,540 INFO L93 Difference]: Finished difference Result 263 states and 356 transitions. [2021-09-14 00:13:37,540 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 356 transitions. [2021-09-14 00:13:37,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:37,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:37,541 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:37,541 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:37,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 196 states, 141 states have (on average 1.3049645390070923) internal successors, (184), 155 states have internal predecessors, (184), 32 states have call successors, (32), 4 states have call predecessors, (32), 5 states have return successors, (56), 36 states have call predecessors, (56), 32 states have call successors, (56) [2021-09-14 00:13:37,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 272 transitions. [2021-09-14 00:13:37,546 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 272 transitions. Word has length 29 [2021-09-14 00:13:37,546 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:37,546 INFO L470 AbstractCegarLoop]: Abstraction has 196 states and 272 transitions. [2021-09-14 00:13:37,546 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2021-09-14 00:13:37,546 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 272 transitions. [2021-09-14 00:13:37,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2021-09-14 00:13:37,548 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:37,549 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:37,568 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:37,749 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2021-09-14 00:13:37,749 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr12ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:37,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:37,750 INFO L82 PathProgramCache]: Analyzing trace with hash 595557041, now seen corresponding path program 1 times [2021-09-14 00:13:37,750 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:37,750 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [334744413] [2021-09-14 00:13:37,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:37,750 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:37,755 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:37,756 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [952520750] [2021-09-14 00:13:37,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:37,756 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:37,756 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:37,758 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:37,764 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2021-09-14 00:13:37,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:37,790 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 3 conjunts are in the unsatisfiable core [2021-09-14 00:13:37,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:37,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:37,954 INFO L281 TraceCheckUtils]: 0: Hoare triple {7438#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {7438#true} is VALID [2021-09-14 00:13:37,954 INFO L281 TraceCheckUtils]: 1: Hoare triple {7438#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {7438#true} is VALID [2021-09-14 00:13:37,957 INFO L281 TraceCheckUtils]: 2: Hoare triple {7438#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {7438#true} is VALID [2021-09-14 00:13:37,958 INFO L281 TraceCheckUtils]: 3: Hoare triple {7438#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,958 INFO L281 TraceCheckUtils]: 4: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,958 INFO L281 TraceCheckUtils]: 5: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,959 INFO L264 TraceCheckUtils]: 6: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {7438#true} is VALID [2021-09-14 00:13:37,959 INFO L281 TraceCheckUtils]: 7: Hoare triple {7438#true} ~n := #in~n; {7438#true} is VALID [2021-09-14 00:13:37,959 INFO L281 TraceCheckUtils]: 8: Hoare triple {7438#true} assume ~n <= 0;#res := 1; {7438#true} is VALID [2021-09-14 00:13:37,959 INFO L281 TraceCheckUtils]: 9: Hoare triple {7438#true} assume true; {7438#true} is VALID [2021-09-14 00:13:37,960 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {7438#true} {7452#(<= ULTIMATE.start_main_~k~0 0)} #111#return; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,960 INFO L281 TraceCheckUtils]: 11: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,960 INFO L264 TraceCheckUtils]: 12: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {7438#true} is VALID [2021-09-14 00:13:37,960 INFO L281 TraceCheckUtils]: 13: Hoare triple {7438#true} ~n := #in~n; {7438#true} is VALID [2021-09-14 00:13:37,960 INFO L281 TraceCheckUtils]: 14: Hoare triple {7438#true} assume ~n <= 0;#res := 1; {7438#true} is VALID [2021-09-14 00:13:37,961 INFO L281 TraceCheckUtils]: 15: Hoare triple {7438#true} assume true; {7438#true} is VALID [2021-09-14 00:13:37,961 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {7438#true} {7452#(<= ULTIMATE.start_main_~k~0 0)} #113#return; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,961 INFO L281 TraceCheckUtils]: 17: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,962 INFO L281 TraceCheckUtils]: 18: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,962 INFO L281 TraceCheckUtils]: 19: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,962 INFO L264 TraceCheckUtils]: 20: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {7438#true} is VALID [2021-09-14 00:13:37,962 INFO L281 TraceCheckUtils]: 21: Hoare triple {7438#true} ~n := #in~n; {7438#true} is VALID [2021-09-14 00:13:37,963 INFO L281 TraceCheckUtils]: 22: Hoare triple {7438#true} assume ~n <= 0;#res := 1; {7438#true} is VALID [2021-09-14 00:13:37,963 INFO L281 TraceCheckUtils]: 23: Hoare triple {7438#true} assume true; {7438#true} is VALID [2021-09-14 00:13:37,963 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {7438#true} {7452#(<= ULTIMATE.start_main_~k~0 0)} #115#return; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,964 INFO L281 TraceCheckUtils]: 25: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,964 INFO L281 TraceCheckUtils]: 26: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,964 INFO L281 TraceCheckUtils]: 27: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,965 INFO L281 TraceCheckUtils]: 28: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,972 INFO L281 TraceCheckUtils]: 29: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,973 INFO L281 TraceCheckUtils]: 30: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {7452#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:37,973 INFO L281 TraceCheckUtils]: 31: Hoare triple {7452#(<= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {7537#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:37,974 INFO L281 TraceCheckUtils]: 32: Hoare triple {7537#(<= |ULTIMATE.start_main_#t~post8| 0)} assume !(1 + main_#t~post8 <= 2147483647); {7439#false} is VALID [2021-09-14 00:13:37,975 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:37,975 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:37,975 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:37,975 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [334744413] [2021-09-14 00:13:37,975 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:37,975 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [952520750] [2021-09-14 00:13:37,976 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [952520750] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:37,976 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:37,976 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2021-09-14 00:13:37,976 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1921079720] [2021-09-14 00:13:37,977 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 33 [2021-09-14 00:13:37,977 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:37,977 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:37,995 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:37,995 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:37,995 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:37,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:37,996 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:37,996 INFO L87 Difference]: Start difference. First operand 196 states and 272 transitions. Second operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:38,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:38,481 INFO L93 Difference]: Finished difference Result 264 states and 352 transitions. [2021-09-14 00:13:38,482 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2021-09-14 00:13:38,482 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 33 [2021-09-14 00:13:38,482 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:38,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:38,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 125 transitions. [2021-09-14 00:13:38,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:38,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 125 transitions. [2021-09-14 00:13:38,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 125 transitions. [2021-09-14 00:13:38,565 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:38,569 INFO L225 Difference]: With dead ends: 264 [2021-09-14 00:13:38,569 INFO L226 Difference]: Without dead ends: 263 [2021-09-14 00:13:38,570 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.24ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:38,571 INFO L928 BasicCegarLoop]: 23 mSDtfsCounter, 26 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 223 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 151.98ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 63 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.40ms SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 223 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 152.87ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:38,571 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 63 Invalid, 224 Unknown, 0 Unchecked, 1.40ms Time], IncrementalHoareTripleChecker [1 Valid, 223 Invalid, 0 Unknown, 0 Unchecked, 152.87ms Time] [2021-09-14 00:13:38,571 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2021-09-14 00:13:38,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 250. [2021-09-14 00:13:38,700 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:38,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:38,701 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:38,701 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:38,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:38,707 INFO L93 Difference]: Finished difference Result 263 states and 350 transitions. [2021-09-14 00:13:38,707 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 350 transitions. [2021-09-14 00:13:38,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:38,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:38,709 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 263 states. [2021-09-14 00:13:38,710 INFO L87 Difference]: Start difference. First operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 263 states. [2021-09-14 00:13:38,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:38,716 INFO L93 Difference]: Finished difference Result 263 states and 350 transitions. [2021-09-14 00:13:38,716 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 350 transitions. [2021-09-14 00:13:38,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:38,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:38,717 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:38,717 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:38,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 191 states have (on average 1.287958115183246) internal successors, (246), 198 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:38,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 346 transitions. [2021-09-14 00:13:38,724 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 346 transitions. Word has length 33 [2021-09-14 00:13:38,724 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:38,724 INFO L470 AbstractCegarLoop]: Abstraction has 250 states and 346 transitions. [2021-09-14 00:13:38,724 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:38,725 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 346 transitions. [2021-09-14 00:13:38,725 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2021-09-14 00:13:38,725 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:38,725 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 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] [2021-09-14 00:13:38,747 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:38,946 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:38,946 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr13ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:38,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:38,947 INFO L82 PathProgramCache]: Analyzing trace with hash 1282399211, now seen corresponding path program 1 times [2021-09-14 00:13:38,947 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:38,947 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1796708052] [2021-09-14 00:13:38,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:38,947 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:38,961 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:38,961 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [29325380] [2021-09-14 00:13:38,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:38,962 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:38,962 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:38,963 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:38,964 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2021-09-14 00:13:38,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:38,993 INFO L263 TraceCheckSpWp]: Trace formula consists of 87 conjuncts, 3 conjunts are in the unsatisfiable core [2021-09-14 00:13:38,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:39,002 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:39,144 INFO L281 TraceCheckUtils]: 0: Hoare triple {8688#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {8688#true} is VALID [2021-09-14 00:13:39,145 INFO L281 TraceCheckUtils]: 1: Hoare triple {8688#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {8688#true} is VALID [2021-09-14 00:13:39,145 INFO L281 TraceCheckUtils]: 2: Hoare triple {8688#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {8688#true} is VALID [2021-09-14 00:13:39,145 INFO L281 TraceCheckUtils]: 3: Hoare triple {8688#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,146 INFO L281 TraceCheckUtils]: 4: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume !!(main_~k~0 <= main_~x~0); {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,146 INFO L281 TraceCheckUtils]: 5: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,146 INFO L264 TraceCheckUtils]: 6: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {8688#true} is VALID [2021-09-14 00:13:39,146 INFO L281 TraceCheckUtils]: 7: Hoare triple {8688#true} ~n := #in~n; {8688#true} is VALID [2021-09-14 00:13:39,146 INFO L281 TraceCheckUtils]: 8: Hoare triple {8688#true} assume ~n <= 0;#res := 1; {8688#true} is VALID [2021-09-14 00:13:39,147 INFO L281 TraceCheckUtils]: 9: Hoare triple {8688#true} assume true; {8688#true} is VALID [2021-09-14 00:13:39,147 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {8688#true} {8702#(<= 0 ULTIMATE.start_main_~k~0)} #111#return; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,148 INFO L281 TraceCheckUtils]: 11: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,148 INFO L264 TraceCheckUtils]: 12: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {8688#true} is VALID [2021-09-14 00:13:39,148 INFO L281 TraceCheckUtils]: 13: Hoare triple {8688#true} ~n := #in~n; {8688#true} is VALID [2021-09-14 00:13:39,148 INFO L281 TraceCheckUtils]: 14: Hoare triple {8688#true} assume ~n <= 0;#res := 1; {8688#true} is VALID [2021-09-14 00:13:39,148 INFO L281 TraceCheckUtils]: 15: Hoare triple {8688#true} assume true; {8688#true} is VALID [2021-09-14 00:13:39,152 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {8688#true} {8702#(<= 0 ULTIMATE.start_main_~k~0)} #113#return; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,153 INFO L281 TraceCheckUtils]: 17: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,154 INFO L281 TraceCheckUtils]: 18: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,156 INFO L281 TraceCheckUtils]: 19: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,156 INFO L264 TraceCheckUtils]: 20: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {8688#true} is VALID [2021-09-14 00:13:39,156 INFO L281 TraceCheckUtils]: 21: Hoare triple {8688#true} ~n := #in~n; {8688#true} is VALID [2021-09-14 00:13:39,156 INFO L281 TraceCheckUtils]: 22: Hoare triple {8688#true} assume ~n <= 0;#res := 1; {8688#true} is VALID [2021-09-14 00:13:39,156 INFO L281 TraceCheckUtils]: 23: Hoare triple {8688#true} assume true; {8688#true} is VALID [2021-09-14 00:13:39,157 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {8688#true} {8702#(<= 0 ULTIMATE.start_main_~k~0)} #115#return; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,159 INFO L281 TraceCheckUtils]: 25: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,159 INFO L281 TraceCheckUtils]: 26: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,159 INFO L281 TraceCheckUtils]: 27: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,159 INFO L281 TraceCheckUtils]: 28: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,160 INFO L281 TraceCheckUtils]: 29: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,160 INFO L281 TraceCheckUtils]: 30: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {8702#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:39,160 INFO L281 TraceCheckUtils]: 31: Hoare triple {8702#(<= 0 ULTIMATE.start_main_~k~0)} main_#t~post8 := main_~k~0; {8787#(<= 0 |ULTIMATE.start_main_#t~post8|)} is VALID [2021-09-14 00:13:39,161 INFO L281 TraceCheckUtils]: 32: Hoare triple {8787#(<= 0 |ULTIMATE.start_main_#t~post8|)} assume 1 + main_#t~post8 <= 2147483647; {8787#(<= 0 |ULTIMATE.start_main_#t~post8|)} is VALID [2021-09-14 00:13:39,161 INFO L281 TraceCheckUtils]: 33: Hoare triple {8787#(<= 0 |ULTIMATE.start_main_#t~post8|)} assume !(1 + main_#t~post8 >= -2147483648); {8689#false} is VALID [2021-09-14 00:13:39,161 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:39,161 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:39,161 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:39,161 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1796708052] [2021-09-14 00:13:39,162 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:39,162 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [29325380] [2021-09-14 00:13:39,162 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [29325380] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:39,162 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:39,162 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2021-09-14 00:13:39,162 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [899679386] [2021-09-14 00:13:39,162 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 34 [2021-09-14 00:13:39,163 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:39,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:39,180 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:39,181 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:39,181 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:39,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:39,182 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:39,182 INFO L87 Difference]: Start difference. First operand 250 states and 346 transitions. Second operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:39,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:39,536 INFO L93 Difference]: Finished difference Result 250 states and 346 transitions. [2021-09-14 00:13:39,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2021-09-14 00:13:39,537 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 34 [2021-09-14 00:13:39,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:39,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:39,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 76 transitions. [2021-09-14 00:13:39,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:39,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 76 transitions. [2021-09-14 00:13:39,539 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 76 transitions. [2021-09-14 00:13:39,594 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:39,598 INFO L225 Difference]: With dead ends: 250 [2021-09-14 00:13:39,598 INFO L226 Difference]: Without dead ends: 249 [2021-09-14 00:13:39,598 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 9.53ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:39,599 INFO L928 BasicCegarLoop]: 14 mSDtfsCounter, 31 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 135 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 84.36ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.03ms SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 135 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 84.96ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:39,600 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 36 Invalid, 136 Unknown, 0 Unchecked, 1.03ms Time], IncrementalHoareTripleChecker [1 Valid, 135 Invalid, 0 Unknown, 0 Unchecked, 84.96ms Time] [2021-09-14 00:13:39,600 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2021-09-14 00:13:39,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 249. [2021-09-14 00:13:39,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:39,782 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:39,783 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:39,783 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:39,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:39,790 INFO L93 Difference]: Finished difference Result 249 states and 344 transitions. [2021-09-14 00:13:39,790 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 344 transitions. [2021-09-14 00:13:39,791 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:39,791 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:39,792 INFO L74 IsIncluded]: Start isIncluded. First operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 249 states. [2021-09-14 00:13:39,792 INFO L87 Difference]: Start difference. First operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 249 states. [2021-09-14 00:13:39,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:39,798 INFO L93 Difference]: Finished difference Result 249 states and 344 transitions. [2021-09-14 00:13:39,799 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 344 transitions. [2021-09-14 00:13:39,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:39,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:39,800 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:39,800 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:39,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 191 states have (on average 1.2774869109947644) internal successors, (244), 197 states have internal predecessors, (244), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:39,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 344 transitions. [2021-09-14 00:13:39,809 INFO L78 Accepts]: Start accepts. Automaton has 249 states and 344 transitions. Word has length 34 [2021-09-14 00:13:39,809 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:39,809 INFO L470 AbstractCegarLoop]: Abstraction has 249 states and 344 transitions. [2021-09-14 00:13:39,809 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 states have internal predecessors, (22), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:39,809 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 344 transitions. [2021-09-14 00:13:39,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2021-09-14 00:13:39,811 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:39,811 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 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] [2021-09-14 00:13:39,829 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:40,025 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:40,025 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr14ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:40,025 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:40,025 INFO L82 PathProgramCache]: Analyzing trace with hash 220869310, now seen corresponding path program 1 times [2021-09-14 00:13:40,026 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:40,026 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344099867] [2021-09-14 00:13:40,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:40,026 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:40,029 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:40,030 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [568748697] [2021-09-14 00:13:40,030 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:40,030 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:40,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:40,031 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:40,032 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2021-09-14 00:13:40,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:40,057 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 3 conjunts are in the unsatisfiable core [2021-09-14 00:13:40,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:40,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:40,227 INFO L281 TraceCheckUtils]: 0: Hoare triple {9898#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {9898#true} is VALID [2021-09-14 00:13:40,227 INFO L281 TraceCheckUtils]: 1: Hoare triple {9898#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {9898#true} is VALID [2021-09-14 00:13:40,228 INFO L281 TraceCheckUtils]: 2: Hoare triple {9898#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,228 INFO L281 TraceCheckUtils]: 3: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,228 INFO L281 TraceCheckUtils]: 4: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,229 INFO L281 TraceCheckUtils]: 5: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,229 INFO L264 TraceCheckUtils]: 6: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {9898#true} is VALID [2021-09-14 00:13:40,229 INFO L281 TraceCheckUtils]: 7: Hoare triple {9898#true} ~n := #in~n; {9898#true} is VALID [2021-09-14 00:13:40,229 INFO L281 TraceCheckUtils]: 8: Hoare triple {9898#true} assume ~n <= 0;#res := 1; {9898#true} is VALID [2021-09-14 00:13:40,229 INFO L281 TraceCheckUtils]: 9: Hoare triple {9898#true} assume true; {9898#true} is VALID [2021-09-14 00:13:40,230 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {9898#true} {9909#(<= ULTIMATE.start_main_~n~0 0)} #111#return; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,230 INFO L281 TraceCheckUtils]: 11: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,230 INFO L264 TraceCheckUtils]: 12: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {9898#true} is VALID [2021-09-14 00:13:40,231 INFO L281 TraceCheckUtils]: 13: Hoare triple {9898#true} ~n := #in~n; {9898#true} is VALID [2021-09-14 00:13:40,231 INFO L281 TraceCheckUtils]: 14: Hoare triple {9898#true} assume ~n <= 0;#res := 1; {9898#true} is VALID [2021-09-14 00:13:40,231 INFO L281 TraceCheckUtils]: 15: Hoare triple {9898#true} assume true; {9898#true} is VALID [2021-09-14 00:13:40,231 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {9898#true} {9909#(<= ULTIMATE.start_main_~n~0 0)} #113#return; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,231 INFO L281 TraceCheckUtils]: 17: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,232 INFO L281 TraceCheckUtils]: 18: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,232 INFO L281 TraceCheckUtils]: 19: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,233 INFO L264 TraceCheckUtils]: 20: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {9898#true} is VALID [2021-09-14 00:13:40,233 INFO L281 TraceCheckUtils]: 21: Hoare triple {9898#true} ~n := #in~n; {9898#true} is VALID [2021-09-14 00:13:40,233 INFO L281 TraceCheckUtils]: 22: Hoare triple {9898#true} assume ~n <= 0;#res := 1; {9898#true} is VALID [2021-09-14 00:13:40,233 INFO L281 TraceCheckUtils]: 23: Hoare triple {9898#true} assume true; {9898#true} is VALID [2021-09-14 00:13:40,238 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {9898#true} {9909#(<= ULTIMATE.start_main_~n~0 0)} #115#return; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,238 INFO L281 TraceCheckUtils]: 25: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,239 INFO L281 TraceCheckUtils]: 26: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,239 INFO L281 TraceCheckUtils]: 27: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,239 INFO L281 TraceCheckUtils]: 28: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,240 INFO L281 TraceCheckUtils]: 29: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,240 INFO L281 TraceCheckUtils]: 30: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,240 INFO L281 TraceCheckUtils]: 31: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,240 INFO L281 TraceCheckUtils]: 32: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,241 INFO L281 TraceCheckUtils]: 33: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,241 INFO L281 TraceCheckUtils]: 34: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~x~0); {9909#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:13:40,241 INFO L281 TraceCheckUtils]: 35: Hoare triple {9909#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post7 := main_~n~0; {10009#(<= |ULTIMATE.start_main_#t~post7| 0)} is VALID [2021-09-14 00:13:40,242 INFO L281 TraceCheckUtils]: 36: Hoare triple {10009#(<= |ULTIMATE.start_main_#t~post7| 0)} assume !(1 + main_#t~post7 <= 2147483647); {9899#false} is VALID [2021-09-14 00:13:40,242 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2021-09-14 00:13:40,242 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:40,242 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:40,242 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [344099867] [2021-09-14 00:13:40,242 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:40,242 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [568748697] [2021-09-14 00:13:40,243 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [568748697] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:40,243 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:40,243 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2021-09-14 00:13:40,243 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [607145949] [2021-09-14 00:13:40,243 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2021-09-14 00:13:40,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:40,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:40,269 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:40,269 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:40,269 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:40,269 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:40,270 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:40,270 INFO L87 Difference]: Start difference. First operand 249 states and 344 transitions. Second operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:40,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:40,675 INFO L93 Difference]: Finished difference Result 265 states and 349 transitions. [2021-09-14 00:13:40,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2021-09-14 00:13:40,675 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2021-09-14 00:13:40,675 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:40,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:40,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 130 transitions. [2021-09-14 00:13:40,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:40,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 130 transitions. [2021-09-14 00:13:40,677 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 130 transitions. [2021-09-14 00:13:40,761 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:40,765 INFO L225 Difference]: With dead ends: 265 [2021-09-14 00:13:40,765 INFO L226 Difference]: Without dead ends: 264 [2021-09-14 00:13:40,765 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 37 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 9.77ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:40,766 INFO L928 BasicCegarLoop]: 20 mSDtfsCounter, 27 mSDsluCounter, 191 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 101.26ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 179 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.16ms SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 101.91ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:40,766 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 54 Invalid, 179 Unknown, 0 Unchecked, 1.16ms Time], IncrementalHoareTripleChecker [1 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 101.91ms Time] [2021-09-14 00:13:40,766 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2021-09-14 00:13:40,922 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 251. [2021-09-14 00:13:40,922 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:40,923 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:40,923 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:40,924 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:40,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:40,930 INFO L93 Difference]: Finished difference Result 264 states and 348 transitions. [2021-09-14 00:13:40,930 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 348 transitions. [2021-09-14 00:13:40,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:40,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:40,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 264 states. [2021-09-14 00:13:40,932 INFO L87 Difference]: Start difference. First operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 264 states. [2021-09-14 00:13:40,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:40,939 INFO L93 Difference]: Finished difference Result 264 states and 348 transitions. [2021-09-14 00:13:40,939 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 348 transitions. [2021-09-14 00:13:40,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:40,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:40,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:40,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:40,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 251 states, 193 states have (on average 1.2746113989637307) internal successors, (246), 199 states have internal predecessors, (246), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:40,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 251 states to 251 states and 346 transitions. [2021-09-14 00:13:40,947 INFO L78 Accepts]: Start accepts. Automaton has 251 states and 346 transitions. Word has length 37 [2021-09-14 00:13:40,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:40,947 INFO L470 AbstractCegarLoop]: Abstraction has 251 states and 346 transitions. [2021-09-14 00:13:40,947 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:40,947 INFO L276 IsEmpty]: Start isEmpty. Operand 251 states and 346 transitions. [2021-09-14 00:13:40,948 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2021-09-14 00:13:40,948 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:40,948 INFO L513 BasicCegarLoop]: trace histogram [3, 3, 3, 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, 1] [2021-09-14 00:13:40,967 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:41,164 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2021-09-14 00:13:41,164 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr15ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:41,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:41,165 INFO L82 PathProgramCache]: Analyzing trace with hash -1742985850, now seen corresponding path program 1 times [2021-09-14 00:13:41,165 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:41,165 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2005763112] [2021-09-14 00:13:41,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:41,165 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:41,169 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:41,169 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1711661789] [2021-09-14 00:13:41,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:41,169 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:41,169 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:41,173 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:41,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2021-09-14 00:13:41,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:41,200 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 3 conjunts are in the unsatisfiable core [2021-09-14 00:13:41,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:41,206 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:41,369 INFO L281 TraceCheckUtils]: 0: Hoare triple {11164#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {11164#true} is VALID [2021-09-14 00:13:41,369 INFO L281 TraceCheckUtils]: 1: Hoare triple {11164#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {11164#true} is VALID [2021-09-14 00:13:41,371 INFO L281 TraceCheckUtils]: 2: Hoare triple {11164#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,372 INFO L281 TraceCheckUtils]: 3: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,373 INFO L281 TraceCheckUtils]: 4: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,373 INFO L281 TraceCheckUtils]: 5: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,373 INFO L264 TraceCheckUtils]: 6: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {11164#true} is VALID [2021-09-14 00:13:41,374 INFO L281 TraceCheckUtils]: 7: Hoare triple {11164#true} ~n := #in~n; {11164#true} is VALID [2021-09-14 00:13:41,374 INFO L281 TraceCheckUtils]: 8: Hoare triple {11164#true} assume ~n <= 0;#res := 1; {11164#true} is VALID [2021-09-14 00:13:41,374 INFO L281 TraceCheckUtils]: 9: Hoare triple {11164#true} assume true; {11164#true} is VALID [2021-09-14 00:13:41,374 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {11164#true} {11175#(<= 0 ULTIMATE.start_main_~n~0)} #111#return; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,375 INFO L281 TraceCheckUtils]: 11: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,375 INFO L264 TraceCheckUtils]: 12: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {11164#true} is VALID [2021-09-14 00:13:41,375 INFO L281 TraceCheckUtils]: 13: Hoare triple {11164#true} ~n := #in~n; {11164#true} is VALID [2021-09-14 00:13:41,375 INFO L281 TraceCheckUtils]: 14: Hoare triple {11164#true} assume ~n <= 0;#res := 1; {11164#true} is VALID [2021-09-14 00:13:41,375 INFO L281 TraceCheckUtils]: 15: Hoare triple {11164#true} assume true; {11164#true} is VALID [2021-09-14 00:13:41,376 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {11164#true} {11175#(<= 0 ULTIMATE.start_main_~n~0)} #113#return; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,376 INFO L281 TraceCheckUtils]: 17: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,376 INFO L281 TraceCheckUtils]: 18: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,377 INFO L281 TraceCheckUtils]: 19: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,377 INFO L264 TraceCheckUtils]: 20: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {11164#true} is VALID [2021-09-14 00:13:41,377 INFO L281 TraceCheckUtils]: 21: Hoare triple {11164#true} ~n := #in~n; {11164#true} is VALID [2021-09-14 00:13:41,377 INFO L281 TraceCheckUtils]: 22: Hoare triple {11164#true} assume ~n <= 0;#res := 1; {11164#true} is VALID [2021-09-14 00:13:41,377 INFO L281 TraceCheckUtils]: 23: Hoare triple {11164#true} assume true; {11164#true} is VALID [2021-09-14 00:13:41,378 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {11164#true} {11175#(<= 0 ULTIMATE.start_main_~n~0)} #115#return; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,378 INFO L281 TraceCheckUtils]: 25: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,378 INFO L281 TraceCheckUtils]: 26: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,378 INFO L281 TraceCheckUtils]: 27: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,379 INFO L281 TraceCheckUtils]: 28: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,379 INFO L281 TraceCheckUtils]: 29: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,383 INFO L281 TraceCheckUtils]: 30: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,384 INFO L281 TraceCheckUtils]: 31: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~post8 := main_~k~0; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,384 INFO L281 TraceCheckUtils]: 32: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 <= 2147483647; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,384 INFO L281 TraceCheckUtils]: 33: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,385 INFO L281 TraceCheckUtils]: 34: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} assume !(main_~k~0 <= main_~x~0); {11175#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:41,385 INFO L281 TraceCheckUtils]: 35: Hoare triple {11175#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~post7 := main_~n~0; {11275#(<= 0 |ULTIMATE.start_main_#t~post7|)} is VALID [2021-09-14 00:13:41,385 INFO L281 TraceCheckUtils]: 36: Hoare triple {11275#(<= 0 |ULTIMATE.start_main_#t~post7|)} assume 1 + main_#t~post7 <= 2147483647; {11275#(<= 0 |ULTIMATE.start_main_#t~post7|)} is VALID [2021-09-14 00:13:41,386 INFO L281 TraceCheckUtils]: 37: Hoare triple {11275#(<= 0 |ULTIMATE.start_main_#t~post7|)} assume !(1 + main_#t~post7 >= -2147483648); {11165#false} is VALID [2021-09-14 00:13:41,386 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2021-09-14 00:13:41,386 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:41,386 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:41,386 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2005763112] [2021-09-14 00:13:41,387 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:41,387 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1711661789] [2021-09-14 00:13:41,387 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1711661789] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:41,387 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:41,387 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2021-09-14 00:13:41,387 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [238836962] [2021-09-14 00:13:41,388 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 38 [2021-09-14 00:13:41,388 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:41,388 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:41,408 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:41,408 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2021-09-14 00:13:41,408 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:41,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2021-09-14 00:13:41,409 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2021-09-14 00:13:41,409 INFO L87 Difference]: Start difference. First operand 251 states and 346 transitions. Second operand has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:41,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:41,724 INFO L93 Difference]: Finished difference Result 251 states and 346 transitions. [2021-09-14 00:13:41,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2021-09-14 00:13:41,725 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 38 [2021-09-14 00:13:41,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:41,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:41,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 74 transitions. [2021-09-14 00:13:41,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:41,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 74 transitions. [2021-09-14 00:13:41,726 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 74 transitions. [2021-09-14 00:13:41,781 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:41,785 INFO L225 Difference]: With dead ends: 251 [2021-09-14 00:13:41,785 INFO L226 Difference]: Without dead ends: 250 [2021-09-14 00:13:41,785 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 9.54ms TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2021-09-14 00:13:41,785 INFO L928 BasicCegarLoop]: 14 mSDtfsCounter, 26 mSDsluCounter, 139 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 73.49ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.78ms SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 73.94ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:41,786 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 36 Invalid, 131 Unknown, 0 Unchecked, 0.78ms Time], IncrementalHoareTripleChecker [1 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 73.94ms Time] [2021-09-14 00:13:41,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2021-09-14 00:13:41,965 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 250. [2021-09-14 00:13:41,966 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:41,966 INFO L82 GeneralOperation]: Start isEquivalent. First operand 250 states. Second operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:41,967 INFO L74 IsIncluded]: Start isIncluded. First operand 250 states. Second operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:41,967 INFO L87 Difference]: Start difference. First operand 250 states. Second operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:41,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:41,972 INFO L93 Difference]: Finished difference Result 250 states and 345 transitions. [2021-09-14 00:13:41,972 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 345 transitions. [2021-09-14 00:13:41,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:41,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:41,974 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 250 states. [2021-09-14 00:13:41,974 INFO L87 Difference]: Start difference. First operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) Second operand 250 states. [2021-09-14 00:13:41,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:41,983 INFO L93 Difference]: Finished difference Result 250 states and 345 transitions. [2021-09-14 00:13:41,984 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 345 transitions. [2021-09-14 00:13:41,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:41,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:41,985 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:41,985 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:41,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 193 states have (on average 1.2694300518134716) internal successors, (245), 198 states have internal predecessors, (245), 36 states have call successors, (36), 4 states have call predecessors, (36), 5 states have return successors, (64), 47 states have call predecessors, (64), 36 states have call successors, (64) [2021-09-14 00:13:41,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 345 transitions. [2021-09-14 00:13:41,991 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 345 transitions. Word has length 38 [2021-09-14 00:13:41,991 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:41,991 INFO L470 AbstractCegarLoop]: Abstraction has 250 states and 345 transitions. [2021-09-14 00:13:41,992 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 8.666666666666666) internal successors, (26), 4 states have internal predecessors, (26), 1 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:41,992 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 345 transitions. [2021-09-14 00:13:41,992 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2021-09-14 00:13:41,992 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:41,992 INFO L513 BasicCegarLoop]: trace histogram [4, 3, 3, 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] [2021-09-14 00:13:42,011 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:42,208 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:42,209 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:42,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:42,209 INFO L82 PathProgramCache]: Analyzing trace with hash 57775986, now seen corresponding path program 1 times [2021-09-14 00:13:42,209 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:42,209 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1842718170] [2021-09-14 00:13:42,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:42,210 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:42,213 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:42,213 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [797936037] [2021-09-14 00:13:42,213 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:42,213 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:42,214 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:42,217 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) [2021-09-14 00:13:42,221 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2021-09-14 00:13:42,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:42,250 INFO L263 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 8 conjunts are in the unsatisfiable core [2021-09-14 00:13:42,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:42,265 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:42,547 INFO L281 TraceCheckUtils]: 0: Hoare triple {12390#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {12390#true} is VALID [2021-09-14 00:13:42,547 INFO L281 TraceCheckUtils]: 1: Hoare triple {12390#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {12390#true} is VALID [2021-09-14 00:13:42,547 INFO L281 TraceCheckUtils]: 2: Hoare triple {12390#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {12390#true} is VALID [2021-09-14 00:13:42,547 INFO L281 TraceCheckUtils]: 3: Hoare triple {12390#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,548 INFO L281 TraceCheckUtils]: 4: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,548 INFO L281 TraceCheckUtils]: 5: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,548 INFO L264 TraceCheckUtils]: 6: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {12390#true} is VALID [2021-09-14 00:13:42,548 INFO L281 TraceCheckUtils]: 7: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,548 INFO L281 TraceCheckUtils]: 8: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,548 INFO L281 TraceCheckUtils]: 9: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,549 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {12390#true} {12404#(<= ULTIMATE.start_main_~k~0 0)} #111#return; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,549 INFO L281 TraceCheckUtils]: 11: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,549 INFO L264 TraceCheckUtils]: 12: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {12390#true} is VALID [2021-09-14 00:13:42,549 INFO L281 TraceCheckUtils]: 13: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,549 INFO L281 TraceCheckUtils]: 14: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,549 INFO L281 TraceCheckUtils]: 15: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,550 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {12390#true} {12404#(<= ULTIMATE.start_main_~k~0 0)} #113#return; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,550 INFO L281 TraceCheckUtils]: 17: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,550 INFO L281 TraceCheckUtils]: 18: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,551 INFO L281 TraceCheckUtils]: 19: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,551 INFO L264 TraceCheckUtils]: 20: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {12390#true} is VALID [2021-09-14 00:13:42,551 INFO L281 TraceCheckUtils]: 21: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,551 INFO L281 TraceCheckUtils]: 22: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,551 INFO L281 TraceCheckUtils]: 23: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,551 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {12390#true} {12404#(<= ULTIMATE.start_main_~k~0 0)} #115#return; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,552 INFO L281 TraceCheckUtils]: 25: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,552 INFO L281 TraceCheckUtils]: 26: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,552 INFO L281 TraceCheckUtils]: 27: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,552 INFO L281 TraceCheckUtils]: 28: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,553 INFO L281 TraceCheckUtils]: 29: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,553 INFO L281 TraceCheckUtils]: 30: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {12404#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:42,553 INFO L281 TraceCheckUtils]: 31: Hoare triple {12404#(<= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {12489#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:42,553 INFO L281 TraceCheckUtils]: 32: Hoare triple {12489#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 <= 2147483647; {12489#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:42,554 INFO L281 TraceCheckUtils]: 33: Hoare triple {12489#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {12496#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:42,555 INFO L281 TraceCheckUtils]: 34: Hoare triple {12496#(<= ULTIMATE.start_main_~k~0 1)} assume !!(main_~k~0 <= main_~x~0); {12496#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:42,557 INFO L281 TraceCheckUtils]: 35: Hoare triple {12496#(<= ULTIMATE.start_main_~k~0 1)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {12503#(<= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:13:42,560 INFO L264 TraceCheckUtils]: 36: Hoare triple {12503#(<= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {12507#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:13:42,563 INFO L281 TraceCheckUtils]: 37: Hoare triple {12507#(<= |fact_#in~n| 1)} ~n := #in~n; {12511#(<= fact_~n 1)} is VALID [2021-09-14 00:13:42,563 INFO L281 TraceCheckUtils]: 38: Hoare triple {12511#(<= fact_~n 1)} assume !(~n <= 0); {12511#(<= fact_~n 1)} is VALID [2021-09-14 00:13:42,563 INFO L281 TraceCheckUtils]: 39: Hoare triple {12511#(<= fact_~n 1)} assume !(~n - 1 <= 2147483647); {12391#false} is VALID [2021-09-14 00:13:42,564 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:42,564 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:13:42,851 INFO L281 TraceCheckUtils]: 39: Hoare triple {12518#(<= fact_~n 2147483648)} assume !(~n - 1 <= 2147483647); {12391#false} is VALID [2021-09-14 00:13:42,852 INFO L281 TraceCheckUtils]: 38: Hoare triple {12518#(<= fact_~n 2147483648)} assume !(~n <= 0); {12518#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:13:42,852 INFO L281 TraceCheckUtils]: 37: Hoare triple {12525#(<= |fact_#in~n| 2147483648)} ~n := #in~n; {12518#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:13:42,852 INFO L264 TraceCheckUtils]: 36: Hoare triple {12529#(<= ULTIMATE.start_binomialCoefficient_~n 2147483648)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {12525#(<= |fact_#in~n| 2147483648)} is VALID [2021-09-14 00:13:42,853 INFO L281 TraceCheckUtils]: 35: Hoare triple {12533#(<= ULTIMATE.start_main_~k~0 2147483648)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {12529#(<= ULTIMATE.start_binomialCoefficient_~n 2147483648)} is VALID [2021-09-14 00:13:42,853 INFO L281 TraceCheckUtils]: 34: Hoare triple {12533#(<= ULTIMATE.start_main_~k~0 2147483648)} assume !!(main_~k~0 <= main_~x~0); {12533#(<= ULTIMATE.start_main_~k~0 2147483648)} is VALID [2021-09-14 00:13:42,854 INFO L281 TraceCheckUtils]: 33: Hoare triple {12540#(<= |ULTIMATE.start_main_#t~post8| 2147483647)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {12533#(<= ULTIMATE.start_main_~k~0 2147483648)} is VALID [2021-09-14 00:13:42,854 INFO L281 TraceCheckUtils]: 32: Hoare triple {12540#(<= |ULTIMATE.start_main_#t~post8| 2147483647)} assume 1 + main_#t~post8 <= 2147483647; {12540#(<= |ULTIMATE.start_main_#t~post8| 2147483647)} is VALID [2021-09-14 00:13:42,854 INFO L281 TraceCheckUtils]: 31: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} main_#t~post8 := main_~k~0; {12540#(<= |ULTIMATE.start_main_#t~post8| 2147483647)} is VALID [2021-09-14 00:13:42,855 INFO L281 TraceCheckUtils]: 30: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,855 INFO L281 TraceCheckUtils]: 29: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,855 INFO L281 TraceCheckUtils]: 28: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,855 INFO L281 TraceCheckUtils]: 27: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,856 INFO L281 TraceCheckUtils]: 26: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,856 INFO L281 TraceCheckUtils]: 25: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,856 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {12390#true} {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} #115#return; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,857 INFO L281 TraceCheckUtils]: 23: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,857 INFO L281 TraceCheckUtils]: 22: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,857 INFO L281 TraceCheckUtils]: 21: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,857 INFO L264 TraceCheckUtils]: 20: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {12390#true} is VALID [2021-09-14 00:13:42,858 INFO L281 TraceCheckUtils]: 19: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,858 INFO L281 TraceCheckUtils]: 18: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,858 INFO L281 TraceCheckUtils]: 17: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,859 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {12390#true} {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} #113#return; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,859 INFO L281 TraceCheckUtils]: 15: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,859 INFO L281 TraceCheckUtils]: 14: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,859 INFO L281 TraceCheckUtils]: 13: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,859 INFO L264 TraceCheckUtils]: 12: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {12390#true} is VALID [2021-09-14 00:13:42,859 INFO L281 TraceCheckUtils]: 11: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,860 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {12390#true} {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} #111#return; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,860 INFO L281 TraceCheckUtils]: 9: Hoare triple {12390#true} assume true; {12390#true} is VALID [2021-09-14 00:13:42,860 INFO L281 TraceCheckUtils]: 8: Hoare triple {12390#true} assume ~n <= 0;#res := 1; {12390#true} is VALID [2021-09-14 00:13:42,860 INFO L281 TraceCheckUtils]: 7: Hoare triple {12390#true} ~n := #in~n; {12390#true} is VALID [2021-09-14 00:13:42,860 INFO L264 TraceCheckUtils]: 6: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {12390#true} is VALID [2021-09-14 00:13:42,860 INFO L281 TraceCheckUtils]: 5: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,861 INFO L281 TraceCheckUtils]: 4: Hoare triple {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} assume !!(main_~k~0 <= main_~x~0); {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,861 INFO L281 TraceCheckUtils]: 3: Hoare triple {12390#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {12547#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:42,861 INFO L281 TraceCheckUtils]: 2: Hoare triple {12390#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {12390#true} is VALID [2021-09-14 00:13:42,861 INFO L281 TraceCheckUtils]: 1: Hoare triple {12390#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {12390#true} is VALID [2021-09-14 00:13:42,861 INFO L281 TraceCheckUtils]: 0: Hoare triple {12390#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {12390#true} is VALID [2021-09-14 00:13:42,861 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:42,861 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:42,861 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1842718170] [2021-09-14 00:13:42,862 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:42,862 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [797936037] [2021-09-14 00:13:42,862 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [797936037] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:13:42,862 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:13:42,862 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2021-09-14 00:13:42,862 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [199868853] [2021-09-14 00:13:42,862 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 40 [2021-09-14 00:13:42,862 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:42,862 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:42,902 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:42,902 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2021-09-14 00:13:42,902 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:42,902 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2021-09-14 00:13:42,903 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2021-09-14 00:13:42,903 INFO L87 Difference]: Start difference. First operand 250 states and 345 transitions. Second operand has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:44,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:44,897 INFO L93 Difference]: Finished difference Result 486 states and 653 transitions. [2021-09-14 00:13:44,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2021-09-14 00:13:44,897 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 40 [2021-09-14 00:13:44,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:44,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:44,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 269 transitions. [2021-09-14 00:13:44,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:44,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 269 transitions. [2021-09-14 00:13:44,902 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 269 transitions. [2021-09-14 00:13:45,106 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 269 edges. 269 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:45,116 INFO L225 Difference]: With dead ends: 486 [2021-09-14 00:13:45,116 INFO L226 Difference]: Without dead ends: 485 [2021-09-14 00:13:45,116 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 69 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 114 ImplicationChecksByTransitivity, 167.99ms TimeCoverageRelationStatistics Valid=154, Invalid=602, Unknown=0, NotChecked=0, Total=756 [2021-09-14 00:13:45,119 INFO L928 BasicCegarLoop]: 25 mSDtfsCounter, 349 mSDsluCounter, 546 mSDsCounter, 0 mSdLazyCounter, 797 mSolverCounterSat, 96 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 648.46ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 363 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 893 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 6.40ms SdHoareTripleChecker+Time, 96 IncrementalHoareTripleChecker+Valid, 797 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 652.99ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:45,120 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [363 Valid, 130 Invalid, 893 Unknown, 0 Unchecked, 6.40ms Time], IncrementalHoareTripleChecker [96 Valid, 797 Invalid, 0 Unknown, 0 Unchecked, 652.99ms Time] [2021-09-14 00:13:45,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 485 states. [2021-09-14 00:13:45,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 485 to 282. [2021-09-14 00:13:45,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:45,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 485 states. Second operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:45,292 INFO L74 IsIncluded]: Start isIncluded. First operand 485 states. Second operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:45,293 INFO L87 Difference]: Start difference. First operand 485 states. Second operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:45,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:45,315 INFO L93 Difference]: Finished difference Result 485 states and 651 transitions. [2021-09-14 00:13:45,315 INFO L276 IsEmpty]: Start isEmpty. Operand 485 states and 651 transitions. [2021-09-14 00:13:45,317 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:45,317 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:45,318 INFO L74 IsIncluded]: Start isIncluded. First operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 485 states. [2021-09-14 00:13:45,318 INFO L87 Difference]: Start difference. First operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 485 states. [2021-09-14 00:13:45,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:45,338 INFO L93 Difference]: Finished difference Result 485 states and 651 transitions. [2021-09-14 00:13:45,338 INFO L276 IsEmpty]: Start isEmpty. Operand 485 states and 651 transitions. [2021-09-14 00:13:45,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:45,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:45,341 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:45,341 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:45,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 282 states, 217 states have (on average 1.294930875576037) internal successors, (281), 226 states have internal predecessors, (281), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:45,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 282 states to 282 states and 393 transitions. [2021-09-14 00:13:45,351 INFO L78 Accepts]: Start accepts. Automaton has 282 states and 393 transitions. Word has length 40 [2021-09-14 00:13:45,351 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:45,351 INFO L470 AbstractCegarLoop]: Abstraction has 282 states and 393 transitions. [2021-09-14 00:13:45,351 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 11 states have (on average 4.363636363636363) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:45,352 INFO L276 IsEmpty]: Start isEmpty. Operand 282 states and 393 transitions. [2021-09-14 00:13:45,352 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2021-09-14 00:13:45,353 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:45,353 INFO L513 BasicCegarLoop]: trace histogram [4, 3, 3, 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, 1] [2021-09-14 00:13:45,380 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:45,568 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:45,569 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:45,569 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:45,569 INFO L82 PathProgramCache]: Analyzing trace with hash 1791055604, now seen corresponding path program 1 times [2021-09-14 00:13:45,569 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:45,569 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1398243398] [2021-09-14 00:13:45,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:45,570 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:45,573 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:45,573 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [94926652] [2021-09-14 00:13:45,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:45,574 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:45,574 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:45,579 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) [2021-09-14 00:13:45,580 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2021-09-14 00:13:45,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:45,607 INFO L263 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 2 conjunts are in the unsatisfiable core [2021-09-14 00:13:45,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:45,616 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 0: Hoare triple {14566#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 1: Hoare triple {14566#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 2: Hoare triple {14566#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 3: Hoare triple {14566#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 4: Hoare triple {14566#true} assume !!(main_~k~0 <= main_~x~0); {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 5: Hoare triple {14566#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L264 TraceCheckUtils]: 6: Hoare triple {14566#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 7: Hoare triple {14566#true} ~n := #in~n; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 8: Hoare triple {14566#true} assume ~n <= 0;#res := 1; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 9: Hoare triple {14566#true} assume true; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {14566#true} {14566#true} #111#return; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L281 TraceCheckUtils]: 11: Hoare triple {14566#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,733 INFO L264 TraceCheckUtils]: 12: Hoare triple {14566#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 13: Hoare triple {14566#true} ~n := #in~n; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 14: Hoare triple {14566#true} assume ~n <= 0;#res := 1; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 15: Hoare triple {14566#true} assume true; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {14566#true} {14566#true} #113#return; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 17: Hoare triple {14566#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 18: Hoare triple {14566#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 19: Hoare triple {14566#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L264 TraceCheckUtils]: 20: Hoare triple {14566#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 21: Hoare triple {14566#true} ~n := #in~n; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 22: Hoare triple {14566#true} assume ~n <= 0;#res := 1; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 23: Hoare triple {14566#true} assume true; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {14566#true} {14566#true} #115#return; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 25: Hoare triple {14566#true} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 26: Hoare triple {14566#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 27: Hoare triple {14566#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {14566#true} is VALID [2021-09-14 00:13:45,734 INFO L281 TraceCheckUtils]: 28: Hoare triple {14566#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 29: Hoare triple {14566#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 30: Hoare triple {14566#true} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 31: Hoare triple {14566#true} main_#t~post8 := main_~k~0; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 32: Hoare triple {14566#true} assume 1 + main_#t~post8 <= 2147483647; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 33: Hoare triple {14566#true} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 34: Hoare triple {14566#true} assume !!(main_~k~0 <= main_~x~0); {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 35: Hoare triple {14566#true} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L264 TraceCheckUtils]: 36: Hoare triple {14566#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 37: Hoare triple {14566#true} ~n := #in~n; {14566#true} is VALID [2021-09-14 00:13:45,735 INFO L281 TraceCheckUtils]: 38: Hoare triple {14566#true} assume !(~n <= 0); {14685#(< 0 fact_~n)} is VALID [2021-09-14 00:13:45,736 INFO L281 TraceCheckUtils]: 39: Hoare triple {14685#(< 0 fact_~n)} assume ~n - 1 <= 2147483647; {14685#(< 0 fact_~n)} is VALID [2021-09-14 00:13:45,736 INFO L281 TraceCheckUtils]: 40: Hoare triple {14685#(< 0 fact_~n)} assume !(~n - 1 >= -2147483648); {14567#false} is VALID [2021-09-14 00:13:45,736 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2021-09-14 00:13:45,736 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:45,736 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:45,736 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1398243398] [2021-09-14 00:13:45,736 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:45,737 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [94926652] [2021-09-14 00:13:45,737 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [94926652] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:45,737 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:45,737 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2021-09-14 00:13:45,737 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1237896650] [2021-09-14 00:13:45,737 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 41 [2021-09-14 00:13:45,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:45,738 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:45,762 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:45,763 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2021-09-14 00:13:45,763 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:45,763 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2021-09-14 00:13:45,763 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2021-09-14 00:13:45,764 INFO L87 Difference]: Start difference. First operand 282 states and 393 transitions. Second operand has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:46,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:46,124 INFO L93 Difference]: Finished difference Result 282 states and 393 transitions. [2021-09-14 00:13:46,124 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2021-09-14 00:13:46,124 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 41 [2021-09-14 00:13:46,124 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:46,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:46,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2021-09-14 00:13:46,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:46,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2021-09-14 00:13:46,134 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 81 transitions. [2021-09-14 00:13:46,194 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:46,199 INFO L225 Difference]: With dead ends: 282 [2021-09-14 00:13:46,199 INFO L226 Difference]: Without dead ends: 281 [2021-09-14 00:13:46,199 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 2.68ms TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2021-09-14 00:13:46,199 INFO L928 BasicCegarLoop]: 21 mSDtfsCounter, 8 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 69.13ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 108 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.91ms SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 69.55ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:46,199 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 40 Invalid, 108 Unknown, 0 Unchecked, 0.91ms Time], IncrementalHoareTripleChecker [0 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 69.55ms Time] [2021-09-14 00:13:46,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2021-09-14 00:13:46,401 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 281. [2021-09-14 00:13:46,401 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:46,402 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:46,402 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:46,403 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:46,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:46,408 INFO L93 Difference]: Finished difference Result 281 states and 390 transitions. [2021-09-14 00:13:46,408 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 390 transitions. [2021-09-14 00:13:46,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:46,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:46,410 INFO L74 IsIncluded]: Start isIncluded. First operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 281 states. [2021-09-14 00:13:46,410 INFO L87 Difference]: Start difference. First operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 281 states. [2021-09-14 00:13:46,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:46,416 INFO L93 Difference]: Finished difference Result 281 states and 390 transitions. [2021-09-14 00:13:46,416 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 390 transitions. [2021-09-14 00:13:46,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:46,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:46,417 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:46,417 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:46,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 281 states, 217 states have (on average 1.2811059907834101) internal successors, (278), 225 states have internal predecessors, (278), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:46,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 281 states to 281 states and 390 transitions. [2021-09-14 00:13:46,423 INFO L78 Accepts]: Start accepts. Automaton has 281 states and 390 transitions. Word has length 41 [2021-09-14 00:13:46,424 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:46,424 INFO L470 AbstractCegarLoop]: Abstraction has 281 states and 390 transitions. [2021-09-14 00:13:46,424 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 13.0) internal successors, (26), 3 states have internal predecessors, (26), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2021-09-14 00:13:46,424 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 390 transitions. [2021-09-14 00:13:46,424 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2021-09-14 00:13:46,425 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:46,425 INFO L513 BasicCegarLoop]: trace histogram [4, 3, 3, 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, 1, 1, 1] [2021-09-14 00:13:46,447 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:46,639 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2021-09-14 00:13:46,639 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:46,639 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:46,639 INFO L82 PathProgramCache]: Analyzing trace with hash 724802482, now seen corresponding path program 1 times [2021-09-14 00:13:46,639 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:46,639 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [29838468] [2021-09-14 00:13:46,639 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:46,640 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:46,643 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:46,643 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1337326161] [2021-09-14 00:13:46,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:46,643 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:46,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:46,647 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:46,698 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2021-09-14 00:13:46,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:46,705 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 8 conjunts are in the unsatisfiable core [2021-09-14 00:13:46,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:46,713 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:47,145 INFO L281 TraceCheckUtils]: 0: Hoare triple {15938#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {15938#true} is VALID [2021-09-14 00:13:47,145 INFO L281 TraceCheckUtils]: 1: Hoare triple {15938#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {15938#true} is VALID [2021-09-14 00:13:47,145 INFO L281 TraceCheckUtils]: 2: Hoare triple {15938#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {15949#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,146 INFO L281 TraceCheckUtils]: 3: Hoare triple {15949#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,146 INFO L281 TraceCheckUtils]: 4: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,147 INFO L281 TraceCheckUtils]: 5: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,147 INFO L264 TraceCheckUtils]: 6: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {15938#true} is VALID [2021-09-14 00:13:47,147 INFO L281 TraceCheckUtils]: 7: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,148 INFO L281 TraceCheckUtils]: 8: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,148 INFO L281 TraceCheckUtils]: 9: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,148 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {15938#true} {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #111#return; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,148 INFO L281 TraceCheckUtils]: 11: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,149 INFO L264 TraceCheckUtils]: 12: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {15938#true} is VALID [2021-09-14 00:13:47,149 INFO L281 TraceCheckUtils]: 13: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,149 INFO L281 TraceCheckUtils]: 14: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,149 INFO L281 TraceCheckUtils]: 15: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,149 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {15938#true} {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #113#return; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,150 INFO L281 TraceCheckUtils]: 17: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,150 INFO L281 TraceCheckUtils]: 18: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,150 INFO L281 TraceCheckUtils]: 19: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,150 INFO L264 TraceCheckUtils]: 20: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {15938#true} is VALID [2021-09-14 00:13:47,150 INFO L281 TraceCheckUtils]: 21: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,150 INFO L281 TraceCheckUtils]: 22: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,151 INFO L281 TraceCheckUtils]: 23: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,151 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {15938#true} {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #115#return; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,151 INFO L281 TraceCheckUtils]: 25: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,152 INFO L281 TraceCheckUtils]: 26: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,152 INFO L281 TraceCheckUtils]: 27: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,153 INFO L281 TraceCheckUtils]: 28: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,153 INFO L281 TraceCheckUtils]: 29: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,153 INFO L281 TraceCheckUtils]: 30: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,154 INFO L281 TraceCheckUtils]: 31: Hoare triple {15953#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {16038#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,154 INFO L281 TraceCheckUtils]: 32: Hoare triple {16038#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {16038#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,155 INFO L281 TraceCheckUtils]: 33: Hoare triple {16038#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {16045#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,155 INFO L281 TraceCheckUtils]: 34: Hoare triple {16045#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~x~0); {16049#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,156 INFO L281 TraceCheckUtils]: 35: Hoare triple {16049#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post7 := main_~n~0; {16053#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 |ULTIMATE.start_main_#t~post7|))} is VALID [2021-09-14 00:13:47,156 INFO L281 TraceCheckUtils]: 36: Hoare triple {16053#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 |ULTIMATE.start_main_#t~post7|))} assume 1 + main_#t~post7 <= 2147483647; {16053#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 |ULTIMATE.start_main_#t~post7|))} is VALID [2021-09-14 00:13:47,157 INFO L281 TraceCheckUtils]: 37: Hoare triple {16053#(and (< ULTIMATE.start_main_~x~0 1) (<= 0 |ULTIMATE.start_main_#t~post7|))} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {16060#(and (< ULTIMATE.start_main_~x~0 1) (<= 1 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:13:47,161 INFO L281 TraceCheckUtils]: 38: Hoare triple {16060#(and (< ULTIMATE.start_main_~x~0 1) (<= 1 ULTIMATE.start_main_~n~0))} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {15939#false} is VALID [2021-09-14 00:13:47,161 INFO L281 TraceCheckUtils]: 39: Hoare triple {15939#false} assume !!(main_~k~0 <= main_~x~0); {15939#false} is VALID [2021-09-14 00:13:47,161 INFO L281 TraceCheckUtils]: 40: Hoare triple {15939#false} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {15939#false} is VALID [2021-09-14 00:13:47,161 INFO L264 TraceCheckUtils]: 41: Hoare triple {15939#false} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {15939#false} is VALID [2021-09-14 00:13:47,161 INFO L281 TraceCheckUtils]: 42: Hoare triple {15939#false} ~n := #in~n; {15939#false} is VALID [2021-09-14 00:13:47,163 INFO L281 TraceCheckUtils]: 43: Hoare triple {15939#false} assume !(~n <= 0); {15939#false} is VALID [2021-09-14 00:13:47,163 INFO L281 TraceCheckUtils]: 44: Hoare triple {15939#false} assume !(~n - 1 <= 2147483647); {15939#false} is VALID [2021-09-14 00:13:47,163 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 11 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:47,163 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:13:47,457 INFO L281 TraceCheckUtils]: 44: Hoare triple {15939#false} assume !(~n - 1 <= 2147483647); {15939#false} is VALID [2021-09-14 00:13:47,457 INFO L281 TraceCheckUtils]: 43: Hoare triple {15939#false} assume !(~n <= 0); {15939#false} is VALID [2021-09-14 00:13:47,457 INFO L281 TraceCheckUtils]: 42: Hoare triple {15939#false} ~n := #in~n; {15939#false} is VALID [2021-09-14 00:13:47,457 INFO L264 TraceCheckUtils]: 41: Hoare triple {15939#false} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {15939#false} is VALID [2021-09-14 00:13:47,457 INFO L281 TraceCheckUtils]: 40: Hoare triple {15939#false} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {15939#false} is VALID [2021-09-14 00:13:47,457 INFO L281 TraceCheckUtils]: 39: Hoare triple {15939#false} assume !!(main_~k~0 <= main_~x~0); {15939#false} is VALID [2021-09-14 00:13:47,458 INFO L281 TraceCheckUtils]: 38: Hoare triple {16100#(< ULTIMATE.start_main_~x~0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {15939#false} is VALID [2021-09-14 00:13:47,458 INFO L281 TraceCheckUtils]: 37: Hoare triple {16104#(< ULTIMATE.start_main_~x~0 (+ |ULTIMATE.start_main_#t~post7| 1))} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {16100#(< ULTIMATE.start_main_~x~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,459 INFO L281 TraceCheckUtils]: 36: Hoare triple {16104#(< ULTIMATE.start_main_~x~0 (+ |ULTIMATE.start_main_#t~post7| 1))} assume 1 + main_#t~post7 <= 2147483647; {16104#(< ULTIMATE.start_main_~x~0 (+ |ULTIMATE.start_main_#t~post7| 1))} is VALID [2021-09-14 00:13:47,459 INFO L281 TraceCheckUtils]: 35: Hoare triple {16111#(< ULTIMATE.start_main_~x~0 (+ ULTIMATE.start_main_~n~0 1))} main_#t~post7 := main_~n~0; {16104#(< ULTIMATE.start_main_~x~0 (+ |ULTIMATE.start_main_#t~post7| 1))} is VALID [2021-09-14 00:13:47,460 INFO L281 TraceCheckUtils]: 34: Hoare triple {16115#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} assume !(main_~k~0 <= main_~x~0); {16111#(< ULTIMATE.start_main_~x~0 (+ ULTIMATE.start_main_~n~0 1))} is VALID [2021-09-14 00:13:47,460 INFO L281 TraceCheckUtils]: 33: Hoare triple {16119#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {16115#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} is VALID [2021-09-14 00:13:47,460 INFO L281 TraceCheckUtils]: 32: Hoare triple {16119#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 <= 2147483647; {16119#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,461 INFO L281 TraceCheckUtils]: 31: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} main_#t~post8 := main_~k~0; {16119#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,461 INFO L281 TraceCheckUtils]: 30: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,461 INFO L281 TraceCheckUtils]: 29: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,462 INFO L281 TraceCheckUtils]: 28: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,462 INFO L281 TraceCheckUtils]: 27: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,462 INFO L281 TraceCheckUtils]: 26: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,462 INFO L281 TraceCheckUtils]: 25: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,463 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {15938#true} {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #115#return; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,463 INFO L281 TraceCheckUtils]: 23: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,463 INFO L281 TraceCheckUtils]: 22: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,463 INFO L281 TraceCheckUtils]: 21: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,463 INFO L264 TraceCheckUtils]: 20: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {15938#true} is VALID [2021-09-14 00:13:47,464 INFO L281 TraceCheckUtils]: 19: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,464 INFO L281 TraceCheckUtils]: 18: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,464 INFO L281 TraceCheckUtils]: 17: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,465 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {15938#true} {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #113#return; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,465 INFO L281 TraceCheckUtils]: 15: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,465 INFO L281 TraceCheckUtils]: 14: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,465 INFO L281 TraceCheckUtils]: 13: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,465 INFO L264 TraceCheckUtils]: 12: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {15938#true} is VALID [2021-09-14 00:13:47,465 INFO L281 TraceCheckUtils]: 11: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,466 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {15938#true} {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #111#return; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,466 INFO L281 TraceCheckUtils]: 9: Hoare triple {15938#true} assume true; {15938#true} is VALID [2021-09-14 00:13:47,466 INFO L281 TraceCheckUtils]: 8: Hoare triple {15938#true} assume ~n <= 0;#res := 1; {15938#true} is VALID [2021-09-14 00:13:47,466 INFO L281 TraceCheckUtils]: 7: Hoare triple {15938#true} ~n := #in~n; {15938#true} is VALID [2021-09-14 00:13:47,466 INFO L264 TraceCheckUtils]: 6: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {15938#true} is VALID [2021-09-14 00:13:47,466 INFO L281 TraceCheckUtils]: 5: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,466 INFO L281 TraceCheckUtils]: 4: Hoare triple {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,467 INFO L281 TraceCheckUtils]: 3: Hoare triple {15949#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {16126#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,467 INFO L281 TraceCheckUtils]: 2: Hoare triple {15938#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {15949#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:13:47,467 INFO L281 TraceCheckUtils]: 1: Hoare triple {15938#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {15938#true} is VALID [2021-09-14 00:13:47,467 INFO L281 TraceCheckUtils]: 0: Hoare triple {15938#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {15938#true} is VALID [2021-09-14 00:13:47,467 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:47,467 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:47,468 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [29838468] [2021-09-14 00:13:47,468 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:47,468 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1337326161] [2021-09-14 00:13:47,468 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1337326161] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:13:47,468 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:13:47,468 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2021-09-14 00:13:47,468 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1179039518] [2021-09-14 00:13:47,469 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 45 [2021-09-14 00:13:47,469 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:47,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:47,516 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:47,516 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2021-09-14 00:13:47,516 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:47,517 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2021-09-14 00:13:47,517 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2021-09-14 00:13:47,517 INFO L87 Difference]: Start difference. First operand 281 states and 390 transitions. Second operand has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:49,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:49,520 INFO L93 Difference]: Finished difference Result 660 states and 884 transitions. [2021-09-14 00:13:49,520 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2021-09-14 00:13:49,520 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 45 [2021-09-14 00:13:49,520 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:49,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:49,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 348 transitions. [2021-09-14 00:13:49,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:49,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 348 transitions. [2021-09-14 00:13:49,525 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 348 transitions. [2021-09-14 00:13:49,798 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 348 edges. 348 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:49,807 INFO L225 Difference]: With dead ends: 660 [2021-09-14 00:13:49,807 INFO L226 Difference]: Without dead ends: 463 [2021-09-14 00:13:49,808 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 174 ImplicationChecksByTransitivity, 243.20ms TimeCoverageRelationStatistics Valid=175, Invalid=637, Unknown=0, NotChecked=0, Total=812 [2021-09-14 00:13:49,808 INFO L928 BasicCegarLoop]: 35 mSDtfsCounter, 283 mSDsluCounter, 645 mSDsCounter, 0 mSdLazyCounter, 827 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 642.20ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 292 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 880 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 4.93ms SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 827 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 645.82ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:49,808 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [292 Valid, 171 Invalid, 880 Unknown, 0 Unchecked, 4.93ms Time], IncrementalHoareTripleChecker [53 Valid, 827 Invalid, 0 Unknown, 0 Unchecked, 645.82ms Time] [2021-09-14 00:13:49,809 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 463 states. [2021-09-14 00:13:50,007 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 463 to 295. [2021-09-14 00:13:50,008 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:50,008 INFO L82 GeneralOperation]: Start isEquivalent. First operand 463 states. Second operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:50,008 INFO L74 IsIncluded]: Start isIncluded. First operand 463 states. Second operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:50,009 INFO L87 Difference]: Start difference. First operand 463 states. Second operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:50,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:50,021 INFO L93 Difference]: Finished difference Result 463 states and 615 transitions. [2021-09-14 00:13:50,021 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 615 transitions. [2021-09-14 00:13:50,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:50,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:50,023 INFO L74 IsIncluded]: Start isIncluded. First operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 463 states. [2021-09-14 00:13:50,023 INFO L87 Difference]: Start difference. First operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) Second operand 463 states. [2021-09-14 00:13:50,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:50,036 INFO L93 Difference]: Finished difference Result 463 states and 615 transitions. [2021-09-14 00:13:50,036 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 615 transitions. [2021-09-14 00:13:50,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:50,038 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:50,038 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:50,038 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:50,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 295 states, 231 states have (on average 1.277056277056277) internal successors, (295), 239 states have internal predecessors, (295), 40 states have call successors, (40), 6 states have call predecessors, (40), 9 states have return successors, (72), 49 states have call predecessors, (72), 40 states have call successors, (72) [2021-09-14 00:13:50,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 295 states to 295 states and 407 transitions. [2021-09-14 00:13:50,045 INFO L78 Accepts]: Start accepts. Automaton has 295 states and 407 transitions. Word has length 45 [2021-09-14 00:13:50,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:50,045 INFO L470 AbstractCegarLoop]: Abstraction has 295 states and 407 transitions. [2021-09-14 00:13:50,045 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.533333333333333) internal successors, (53), 15 states have internal predecessors, (53), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2021-09-14 00:13:50,046 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 407 transitions. [2021-09-14 00:13:50,046 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2021-09-14 00:13:50,046 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:50,046 INFO L513 BasicCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1] [2021-09-14 00:13:50,069 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:50,262 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2021-09-14 00:13:50,263 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:50,263 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:50,263 INFO L82 PathProgramCache]: Analyzing trace with hash -1157697575, now seen corresponding path program 1 times [2021-09-14 00:13:50,263 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:50,263 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [750177268] [2021-09-14 00:13:50,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:50,263 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:50,267 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:50,267 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [48849900] [2021-09-14 00:13:50,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:50,267 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:50,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:50,270 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:50,292 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2021-09-14 00:13:50,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:50,307 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 8 conjunts are in the unsatisfiable core [2021-09-14 00:13:50,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:50,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:50,547 INFO L281 TraceCheckUtils]: 0: Hoare triple {18322#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {18322#true} is VALID [2021-09-14 00:13:50,547 INFO L281 TraceCheckUtils]: 1: Hoare triple {18322#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {18322#true} is VALID [2021-09-14 00:13:50,547 INFO L281 TraceCheckUtils]: 2: Hoare triple {18322#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {18322#true} is VALID [2021-09-14 00:13:50,548 INFO L281 TraceCheckUtils]: 3: Hoare triple {18322#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,548 INFO L281 TraceCheckUtils]: 4: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume !!(main_~k~0 <= main_~x~0); {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,548 INFO L281 TraceCheckUtils]: 5: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,548 INFO L264 TraceCheckUtils]: 6: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {18322#true} is VALID [2021-09-14 00:13:50,548 INFO L281 TraceCheckUtils]: 7: Hoare triple {18322#true} ~n := #in~n; {18322#true} is VALID [2021-09-14 00:13:50,549 INFO L281 TraceCheckUtils]: 8: Hoare triple {18322#true} assume ~n <= 0;#res := 1; {18322#true} is VALID [2021-09-14 00:13:50,549 INFO L281 TraceCheckUtils]: 9: Hoare triple {18322#true} assume true; {18322#true} is VALID [2021-09-14 00:13:50,549 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {18322#true} {18336#(<= 0 ULTIMATE.start_main_~k~0)} #111#return; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,549 INFO L281 TraceCheckUtils]: 11: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,549 INFO L264 TraceCheckUtils]: 12: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {18322#true} is VALID [2021-09-14 00:13:50,549 INFO L281 TraceCheckUtils]: 13: Hoare triple {18322#true} ~n := #in~n; {18322#true} is VALID [2021-09-14 00:13:50,550 INFO L281 TraceCheckUtils]: 14: Hoare triple {18322#true} assume ~n <= 0;#res := 1; {18322#true} is VALID [2021-09-14 00:13:50,550 INFO L281 TraceCheckUtils]: 15: Hoare triple {18322#true} assume true; {18322#true} is VALID [2021-09-14 00:13:50,550 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {18322#true} {18336#(<= 0 ULTIMATE.start_main_~k~0)} #113#return; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,550 INFO L281 TraceCheckUtils]: 17: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,551 INFO L281 TraceCheckUtils]: 18: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,551 INFO L281 TraceCheckUtils]: 19: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,551 INFO L264 TraceCheckUtils]: 20: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {18322#true} is VALID [2021-09-14 00:13:50,551 INFO L281 TraceCheckUtils]: 21: Hoare triple {18322#true} ~n := #in~n; {18322#true} is VALID [2021-09-14 00:13:50,551 INFO L281 TraceCheckUtils]: 22: Hoare triple {18322#true} assume ~n <= 0;#res := 1; {18322#true} is VALID [2021-09-14 00:13:50,551 INFO L281 TraceCheckUtils]: 23: Hoare triple {18322#true} assume true; {18322#true} is VALID [2021-09-14 00:13:50,552 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {18322#true} {18336#(<= 0 ULTIMATE.start_main_~k~0)} #115#return; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,552 INFO L281 TraceCheckUtils]: 25: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,552 INFO L281 TraceCheckUtils]: 26: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,552 INFO L281 TraceCheckUtils]: 27: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,553 INFO L281 TraceCheckUtils]: 28: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,553 INFO L281 TraceCheckUtils]: 29: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,553 INFO L281 TraceCheckUtils]: 30: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {18336#(<= 0 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,553 INFO L281 TraceCheckUtils]: 31: Hoare triple {18336#(<= 0 ULTIMATE.start_main_~k~0)} main_#t~post8 := main_~k~0; {18421#(<= 0 |ULTIMATE.start_main_#t~post8|)} is VALID [2021-09-14 00:13:50,554 INFO L281 TraceCheckUtils]: 32: Hoare triple {18421#(<= 0 |ULTIMATE.start_main_#t~post8|)} assume 1 + main_#t~post8 <= 2147483647; {18421#(<= 0 |ULTIMATE.start_main_#t~post8|)} is VALID [2021-09-14 00:13:50,554 INFO L281 TraceCheckUtils]: 33: Hoare triple {18421#(<= 0 |ULTIMATE.start_main_#t~post8|)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {18428#(<= 1 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,556 INFO L281 TraceCheckUtils]: 34: Hoare triple {18428#(<= 1 ULTIMATE.start_main_~k~0)} assume !!(main_~k~0 <= main_~x~0); {18428#(<= 1 ULTIMATE.start_main_~k~0)} is VALID [2021-09-14 00:13:50,557 INFO L281 TraceCheckUtils]: 35: Hoare triple {18428#(<= 1 ULTIMATE.start_main_~k~0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {18435#(<= 1 ULTIMATE.start_binomialCoefficient_~n)} is VALID [2021-09-14 00:13:50,557 INFO L264 TraceCheckUtils]: 36: Hoare triple {18435#(<= 1 ULTIMATE.start_binomialCoefficient_~n)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {18322#true} is VALID [2021-09-14 00:13:50,557 INFO L281 TraceCheckUtils]: 37: Hoare triple {18322#true} ~n := #in~n; {18442#(<= |fact_#in~n| fact_~n)} is VALID [2021-09-14 00:13:50,558 INFO L281 TraceCheckUtils]: 38: Hoare triple {18442#(<= |fact_#in~n| fact_~n)} assume ~n <= 0;#res := 1; {18446#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:50,558 INFO L281 TraceCheckUtils]: 39: Hoare triple {18446#(<= |fact_#in~n| 0)} assume true; {18446#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:50,559 INFO L276 TraceCheckUtils]: 40: Hoare quadruple {18446#(<= |fact_#in~n| 0)} {18435#(<= 1 ULTIMATE.start_binomialCoefficient_~n)} #117#return; {18323#false} is VALID [2021-09-14 00:13:50,559 INFO L281 TraceCheckUtils]: 41: Hoare triple {18323#false} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {18323#false} is VALID [2021-09-14 00:13:50,559 INFO L264 TraceCheckUtils]: 42: Hoare triple {18323#false} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {18323#false} is VALID [2021-09-14 00:13:50,559 INFO L281 TraceCheckUtils]: 43: Hoare triple {18323#false} ~n := #in~n; {18323#false} is VALID [2021-09-14 00:13:50,559 INFO L281 TraceCheckUtils]: 44: Hoare triple {18323#false} assume !(~n <= 0); {18323#false} is VALID [2021-09-14 00:13:50,559 INFO L281 TraceCheckUtils]: 45: Hoare triple {18323#false} assume !(~n - 1 <= 2147483647); {18323#false} is VALID [2021-09-14 00:13:50,560 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2021-09-14 00:13:50,560 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:13:50,560 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:50,560 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [750177268] [2021-09-14 00:13:50,560 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:50,560 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [48849900] [2021-09-14 00:13:50,560 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [48849900] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:13:50,560 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:13:50,560 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2021-09-14 00:13:50,560 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [351806783] [2021-09-14 00:13:50,560 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 46 [2021-09-14 00:13:50,561 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:50,561 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2021-09-14 00:13:50,588 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:50,588 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2021-09-14 00:13:50,588 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:50,588 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2021-09-14 00:13:50,589 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:13:50,589 INFO L87 Difference]: Start difference. First operand 295 states and 407 transitions. Second operand has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2021-09-14 00:13:51,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:51,601 INFO L93 Difference]: Finished difference Result 522 states and 704 transitions. [2021-09-14 00:13:51,601 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2021-09-14 00:13:51,602 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 46 [2021-09-14 00:13:51,602 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:51,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2021-09-14 00:13:51,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 214 transitions. [2021-09-14 00:13:51,603 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2021-09-14 00:13:51,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 214 transitions. [2021-09-14 00:13:51,605 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 214 transitions. [2021-09-14 00:13:51,758 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 214 edges. 214 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:51,763 INFO L225 Difference]: With dead ends: 522 [2021-09-14 00:13:51,763 INFO L226 Difference]: Without dead ends: 255 [2021-09-14 00:13:51,764 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 50.85ms TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2021-09-14 00:13:51,765 INFO L928 BasicCegarLoop]: 10 mSDtfsCounter, 147 mSDsluCounter, 301 mSDsCounter, 0 mSdLazyCounter, 516 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 379.68ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 154 SdHoareTripleChecker+Valid, 37 SdHoareTripleChecker+Invalid, 546 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.78ms SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 516 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 381.60ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:51,765 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [154 Valid, 37 Invalid, 546 Unknown, 0 Unchecked, 1.78ms Time], IncrementalHoareTripleChecker [30 Valid, 516 Invalid, 0 Unknown, 0 Unchecked, 381.60ms Time] [2021-09-14 00:13:51,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 255 states. [2021-09-14 00:13:51,933 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 255 to 236. [2021-09-14 00:13:51,933 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:51,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 255 states. Second operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) [2021-09-14 00:13:51,937 INFO L74 IsIncluded]: Start isIncluded. First operand 255 states. Second operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) [2021-09-14 00:13:51,937 INFO L87 Difference]: Start difference. First operand 255 states. Second operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) [2021-09-14 00:13:51,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:51,941 INFO L93 Difference]: Finished difference Result 255 states and 322 transitions. [2021-09-14 00:13:51,941 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 322 transitions. [2021-09-14 00:13:51,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:51,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:51,942 INFO L74 IsIncluded]: Start isIncluded. First operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) Second operand 255 states. [2021-09-14 00:13:51,943 INFO L87 Difference]: Start difference. First operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) Second operand 255 states. [2021-09-14 00:13:51,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:51,946 INFO L93 Difference]: Finished difference Result 255 states and 322 transitions. [2021-09-14 00:13:51,947 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 322 transitions. [2021-09-14 00:13:51,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:51,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:51,947 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:51,947 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:51,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 236 states, 182 states have (on average 1.2857142857142858) internal successors, (234), 194 states have internal predecessors, (234), 30 states have call successors, (30), 6 states have call predecessors, (30), 9 states have return successors, (48), 35 states have call predecessors, (48), 30 states have call successors, (48) [2021-09-14 00:13:51,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 236 states to 236 states and 312 transitions. [2021-09-14 00:13:51,952 INFO L78 Accepts]: Start accepts. Automaton has 236 states and 312 transitions. Word has length 46 [2021-09-14 00:13:51,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:51,952 INFO L470 AbstractCegarLoop]: Abstraction has 236 states and 312 transitions. [2021-09-14 00:13:51,952 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 4.428571428571429) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2021-09-14 00:13:51,952 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 312 transitions. [2021-09-14 00:13:51,952 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2021-09-14 00:13:51,953 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:51,953 INFO L513 BasicCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1] [2021-09-14 00:13:51,975 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:52,160 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2021-09-14 00:13:52,161 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:52,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:52,161 INFO L82 PathProgramCache]: Analyzing trace with hash -1962570407, now seen corresponding path program 1 times [2021-09-14 00:13:52,161 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:52,161 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [287249756] [2021-09-14 00:13:52,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:52,161 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:52,165 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:52,168 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1242490556] [2021-09-14 00:13:52,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:52,169 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:52,169 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:52,169 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:52,173 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2021-09-14 00:13:52,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:52,199 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 19 conjunts are in the unsatisfiable core [2021-09-14 00:13:52,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:52,206 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:52,444 INFO L281 TraceCheckUtils]: 0: Hoare triple {19907#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {19907#true} is VALID [2021-09-14 00:13:52,444 INFO L281 TraceCheckUtils]: 1: Hoare triple {19907#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {19907#true} is VALID [2021-09-14 00:13:52,444 INFO L281 TraceCheckUtils]: 2: Hoare triple {19907#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {19907#true} is VALID [2021-09-14 00:13:52,444 INFO L281 TraceCheckUtils]: 3: Hoare triple {19907#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,444 INFO L281 TraceCheckUtils]: 4: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,445 INFO L281 TraceCheckUtils]: 5: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,445 INFO L264 TraceCheckUtils]: 6: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {19907#true} is VALID [2021-09-14 00:13:52,445 INFO L281 TraceCheckUtils]: 7: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:52,445 INFO L281 TraceCheckUtils]: 8: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:52,445 INFO L281 TraceCheckUtils]: 9: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:52,445 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {19907#true} {19921#(= ULTIMATE.start_main_~k~0 0)} #111#return; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,446 INFO L281 TraceCheckUtils]: 11: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,446 INFO L264 TraceCheckUtils]: 12: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {19907#true} is VALID [2021-09-14 00:13:52,446 INFO L281 TraceCheckUtils]: 13: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:52,446 INFO L281 TraceCheckUtils]: 14: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:52,446 INFO L281 TraceCheckUtils]: 15: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:52,446 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {19907#true} {19921#(= ULTIMATE.start_main_~k~0 0)} #113#return; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 17: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 18: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 19: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,447 INFO L264 TraceCheckUtils]: 20: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {19907#true} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 21: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 22: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:52,447 INFO L281 TraceCheckUtils]: 23: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:52,454 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {19907#true} {19921#(= ULTIMATE.start_main_~k~0 0)} #115#return; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,455 INFO L281 TraceCheckUtils]: 25: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,455 INFO L281 TraceCheckUtils]: 26: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,455 INFO L281 TraceCheckUtils]: 27: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,456 INFO L281 TraceCheckUtils]: 28: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,456 INFO L281 TraceCheckUtils]: 29: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,456 INFO L281 TraceCheckUtils]: 30: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {19921#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:52,457 INFO L281 TraceCheckUtils]: 31: Hoare triple {19921#(= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {20006#(= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:52,457 INFO L281 TraceCheckUtils]: 32: Hoare triple {20006#(= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 <= 2147483647; {20006#(= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:52,457 INFO L281 TraceCheckUtils]: 33: Hoare triple {20006#(= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {20013#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:52,458 INFO L281 TraceCheckUtils]: 34: Hoare triple {20013#(= ULTIMATE.start_main_~k~0 1)} assume !!(main_~k~0 <= main_~x~0); {20013#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:52,458 INFO L281 TraceCheckUtils]: 35: Hoare triple {20013#(= ULTIMATE.start_main_~k~0 1)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {20020#(= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:13:52,458 INFO L264 TraceCheckUtils]: 36: Hoare triple {20020#(= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {20024#(= |fact_#in~n| 1)} is VALID [2021-09-14 00:13:52,459 INFO L281 TraceCheckUtils]: 37: Hoare triple {20024#(= |fact_#in~n| 1)} ~n := #in~n; {20028#(= fact_~n 1)} is VALID [2021-09-14 00:13:52,459 INFO L281 TraceCheckUtils]: 38: Hoare triple {20028#(= fact_~n 1)} assume !(~n <= 0); {20028#(= fact_~n 1)} is VALID [2021-09-14 00:13:52,459 INFO L281 TraceCheckUtils]: 39: Hoare triple {20028#(= fact_~n 1)} assume ~n - 1 <= 2147483647; {20028#(= fact_~n 1)} is VALID [2021-09-14 00:13:52,459 INFO L281 TraceCheckUtils]: 40: Hoare triple {20028#(= fact_~n 1)} assume ~n - 1 >= -2147483648; {20028#(= fact_~n 1)} is VALID [2021-09-14 00:13:52,459 INFO L264 TraceCheckUtils]: 41: Hoare triple {20028#(= fact_~n 1)} call #t~ret0 := fact(~n - 1); {19907#true} is VALID [2021-09-14 00:13:52,460 INFO L281 TraceCheckUtils]: 42: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:52,460 INFO L281 TraceCheckUtils]: 43: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {20047#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:52,460 INFO L281 TraceCheckUtils]: 44: Hoare triple {20047#(= |fact_#res| 1)} assume true; {20047#(= |fact_#res| 1)} is VALID [2021-09-14 00:13:52,461 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {20047#(= |fact_#res| 1)} {20028#(= fact_~n 1)} #109#return; {20054#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} is VALID [2021-09-14 00:13:52,461 INFO L281 TraceCheckUtils]: 46: Hoare triple {20054#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {20054#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} is VALID [2021-09-14 00:13:52,461 INFO L281 TraceCheckUtils]: 47: Hoare triple {20054#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} assume !(~n * #t~ret0 <= 2147483647); {19908#false} is VALID [2021-09-14 00:13:52,461 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2021-09-14 00:13:52,461 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:13:53,221 INFO L281 TraceCheckUtils]: 47: Hoare triple {20061#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume !(~n * #t~ret0 <= 2147483647); {19908#false} is VALID [2021-09-14 00:13:53,221 INFO L281 TraceCheckUtils]: 46: Hoare triple {20061#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {20061#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:13:53,222 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {20072#(forall ((v_fact_~n_BEFORE_CALL_2 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_2) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_2)))} {20068#(<= fact_~n 2147483647)} #109#return; {20061#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:13:53,222 INFO L281 TraceCheckUtils]: 44: Hoare triple {20072#(forall ((v_fact_~n_BEFORE_CALL_2 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_2) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_2)))} assume true; {20072#(forall ((v_fact_~n_BEFORE_CALL_2 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_2) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_2)))} is VALID [2021-09-14 00:13:53,223 INFO L281 TraceCheckUtils]: 43: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {20072#(forall ((v_fact_~n_BEFORE_CALL_2 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_2) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_2)))} is VALID [2021-09-14 00:13:53,223 INFO L281 TraceCheckUtils]: 42: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:53,223 INFO L264 TraceCheckUtils]: 41: Hoare triple {20068#(<= fact_~n 2147483647)} call #t~ret0 := fact(~n - 1); {19907#true} is VALID [2021-09-14 00:13:53,223 INFO L281 TraceCheckUtils]: 40: Hoare triple {20068#(<= fact_~n 2147483647)} assume ~n - 1 >= -2147483648; {20068#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:13:53,223 INFO L281 TraceCheckUtils]: 39: Hoare triple {20068#(<= fact_~n 2147483647)} assume ~n - 1 <= 2147483647; {20068#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:13:53,223 INFO L281 TraceCheckUtils]: 38: Hoare triple {20068#(<= fact_~n 2147483647)} assume !(~n <= 0); {20068#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:13:53,233 INFO L281 TraceCheckUtils]: 37: Hoare triple {20094#(<= |fact_#in~n| 2147483647)} ~n := #in~n; {20068#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:13:53,233 INFO L264 TraceCheckUtils]: 36: Hoare triple {20098#(<= ULTIMATE.start_binomialCoefficient_~n 2147483647)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {20094#(<= |fact_#in~n| 2147483647)} is VALID [2021-09-14 00:13:53,234 INFO L281 TraceCheckUtils]: 35: Hoare triple {20102#(<= ULTIMATE.start_main_~k~0 2147483647)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {20098#(<= ULTIMATE.start_binomialCoefficient_~n 2147483647)} is VALID [2021-09-14 00:13:53,234 INFO L281 TraceCheckUtils]: 34: Hoare triple {20102#(<= ULTIMATE.start_main_~k~0 2147483647)} assume !!(main_~k~0 <= main_~x~0); {20102#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:53,235 INFO L281 TraceCheckUtils]: 33: Hoare triple {20109#(<= |ULTIMATE.start_main_#t~post8| 2147483646)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {20102#(<= ULTIMATE.start_main_~k~0 2147483647)} is VALID [2021-09-14 00:13:53,235 INFO L281 TraceCheckUtils]: 32: Hoare triple {20109#(<= |ULTIMATE.start_main_#t~post8| 2147483646)} assume 1 + main_#t~post8 <= 2147483647; {20109#(<= |ULTIMATE.start_main_#t~post8| 2147483646)} is VALID [2021-09-14 00:13:53,236 INFO L281 TraceCheckUtils]: 31: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} main_#t~post8 := main_~k~0; {20109#(<= |ULTIMATE.start_main_#t~post8| 2147483646)} is VALID [2021-09-14 00:13:53,236 INFO L281 TraceCheckUtils]: 30: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,236 INFO L281 TraceCheckUtils]: 29: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,237 INFO L281 TraceCheckUtils]: 28: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,237 INFO L281 TraceCheckUtils]: 27: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,237 INFO L281 TraceCheckUtils]: 26: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,237 INFO L281 TraceCheckUtils]: 25: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,238 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {19907#true} {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} #115#return; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,238 INFO L281 TraceCheckUtils]: 23: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:53,238 INFO L281 TraceCheckUtils]: 22: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:53,238 INFO L281 TraceCheckUtils]: 21: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:53,238 INFO L264 TraceCheckUtils]: 20: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {19907#true} is VALID [2021-09-14 00:13:53,239 INFO L281 TraceCheckUtils]: 19: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,239 INFO L281 TraceCheckUtils]: 18: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,239 INFO L281 TraceCheckUtils]: 17: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,240 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {19907#true} {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} #113#return; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,240 INFO L281 TraceCheckUtils]: 15: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:53,240 INFO L281 TraceCheckUtils]: 14: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:53,240 INFO L281 TraceCheckUtils]: 13: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:53,240 INFO L264 TraceCheckUtils]: 12: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {19907#true} is VALID [2021-09-14 00:13:53,240 INFO L281 TraceCheckUtils]: 11: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,241 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {19907#true} {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} #111#return; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,241 INFO L281 TraceCheckUtils]: 9: Hoare triple {19907#true} assume true; {19907#true} is VALID [2021-09-14 00:13:53,241 INFO L281 TraceCheckUtils]: 8: Hoare triple {19907#true} assume ~n <= 0;#res := 1; {19907#true} is VALID [2021-09-14 00:13:53,241 INFO L281 TraceCheckUtils]: 7: Hoare triple {19907#true} ~n := #in~n; {19907#true} is VALID [2021-09-14 00:13:53,241 INFO L264 TraceCheckUtils]: 6: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {19907#true} is VALID [2021-09-14 00:13:53,241 INFO L281 TraceCheckUtils]: 5: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,242 INFO L281 TraceCheckUtils]: 4: Hoare triple {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} assume !!(main_~k~0 <= main_~x~0); {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,242 INFO L281 TraceCheckUtils]: 3: Hoare triple {19907#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {20116#(<= ULTIMATE.start_main_~k~0 2147483646)} is VALID [2021-09-14 00:13:53,242 INFO L281 TraceCheckUtils]: 2: Hoare triple {19907#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {19907#true} is VALID [2021-09-14 00:13:53,242 INFO L281 TraceCheckUtils]: 1: Hoare triple {19907#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {19907#true} is VALID [2021-09-14 00:13:53,242 INFO L281 TraceCheckUtils]: 0: Hoare triple {19907#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {19907#true} is VALID [2021-09-14 00:13:53,242 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2021-09-14 00:13:53,242 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:53,243 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [287249756] [2021-09-14 00:13:53,243 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:53,243 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1242490556] [2021-09-14 00:13:53,243 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1242490556] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:13:53,243 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:13:53,243 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 17 [2021-09-14 00:13:53,243 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [548503202] [2021-09-14 00:13:53,244 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 48 [2021-09-14 00:13:53,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:53,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2021-09-14 00:13:53,298 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:53,299 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2021-09-14 00:13:53,299 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:53,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2021-09-14 00:13:53,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=260, Unknown=0, NotChecked=0, Total=306 [2021-09-14 00:13:53,299 INFO L87 Difference]: Start difference. First operand 236 states and 312 transitions. Second operand has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2021-09-14 00:13:57,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:57,494 INFO L93 Difference]: Finished difference Result 387 states and 491 transitions. [2021-09-14 00:13:57,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2021-09-14 00:13:57,494 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 48 [2021-09-14 00:13:57,494 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:13:57,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2021-09-14 00:13:57,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 267 transitions. [2021-09-14 00:13:57,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2021-09-14 00:13:57,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 267 transitions. [2021-09-14 00:13:57,498 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 267 transitions. [2021-09-14 00:13:57,682 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 267 edges. 267 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:57,688 INFO L225 Difference]: With dead ends: 387 [2021-09-14 00:13:57,688 INFO L226 Difference]: Without dead ends: 382 [2021-09-14 00:13:57,689 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 81 SyntacticMatches, 0 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 236 ImplicationChecksByTransitivity, 884.03ms TimeCoverageRelationStatistics Valid=208, Invalid=1198, Unknown=0, NotChecked=0, Total=1406 [2021-09-14 00:13:57,689 INFO L928 BasicCegarLoop]: 29 mSDtfsCounter, 248 mSDsluCounter, 1293 mSDsCounter, 0 mSdLazyCounter, 1515 mSolverCounterSat, 80 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1164.30ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 258 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 1764 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 13.73ms SdHoareTripleChecker+Time, 80 IncrementalHoareTripleChecker+Valid, 1515 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 169 IncrementalHoareTripleChecker+Unchecked, 1172.71ms IncrementalHoareTripleChecker+Time [2021-09-14 00:13:57,690 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [258 Valid, 331 Invalid, 1764 Unknown, 0 Unchecked, 13.73ms Time], IncrementalHoareTripleChecker [80 Valid, 1515 Invalid, 0 Unknown, 169 Unchecked, 1172.71ms Time] [2021-09-14 00:13:57,690 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 382 states. [2021-09-14 00:13:57,913 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 382 to 327. [2021-09-14 00:13:57,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:13:57,914 INFO L82 GeneralOperation]: Start isEquivalent. First operand 382 states. Second operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) [2021-09-14 00:13:57,914 INFO L74 IsIncluded]: Start isIncluded. First operand 382 states. Second operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) [2021-09-14 00:13:57,915 INFO L87 Difference]: Start difference. First operand 382 states. Second operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) [2021-09-14 00:13:57,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:57,926 INFO L93 Difference]: Finished difference Result 382 states and 481 transitions. [2021-09-14 00:13:57,926 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 481 transitions. [2021-09-14 00:13:57,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:57,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:57,928 INFO L74 IsIncluded]: Start isIncluded. First operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) Second operand 382 states. [2021-09-14 00:13:57,928 INFO L87 Difference]: Start difference. First operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) Second operand 382 states. [2021-09-14 00:13:57,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:13:57,935 INFO L93 Difference]: Finished difference Result 382 states and 481 transitions. [2021-09-14 00:13:57,935 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 481 transitions. [2021-09-14 00:13:57,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:13:57,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:13:57,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:13:57,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:13:57,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 327 states, 259 states have (on average 1.2857142857142858) internal successors, (333), 263 states have internal predecessors, (333), 42 states have call successors, (42), 8 states have call predecessors, (42), 11 states have return successors, (69), 55 states have call predecessors, (69), 42 states have call successors, (69) [2021-09-14 00:13:57,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 327 states to 327 states and 444 transitions. [2021-09-14 00:13:57,944 INFO L78 Accepts]: Start accepts. Automaton has 327 states and 444 transitions. Word has length 48 [2021-09-14 00:13:57,944 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:13:57,944 INFO L470 AbstractCegarLoop]: Abstraction has 327 states and 444 transitions. [2021-09-14 00:13:57,944 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 15 states have (on average 3.8666666666666667) internal successors, (58), 16 states have internal predecessors, (58), 6 states have call successors, (10), 3 states have call predecessors, (10), 3 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2021-09-14 00:13:57,945 INFO L276 IsEmpty]: Start isEmpty. Operand 327 states and 444 transitions. [2021-09-14 00:13:57,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2021-09-14 00:13:57,945 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:13:57,945 INFO L513 BasicCegarLoop]: trace histogram [6, 4, 4, 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, 1, 1, 1, 1, 1, 1] [2021-09-14 00:13:57,965 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2021-09-14 00:13:58,160 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:58,161 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting factErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:13:58,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:13:58,161 INFO L82 PathProgramCache]: Analyzing trace with hash -1447783589, now seen corresponding path program 1 times [2021-09-14 00:13:58,161 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:13:58,161 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1502016775] [2021-09-14 00:13:58,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:58,161 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:13:58,165 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:13:58,165 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [585050193] [2021-09-14 00:13:58,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:13:58,165 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:13:58,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:13:58,167 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:13:58,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:58,197 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 10 conjunts are in the unsatisfiable core [2021-09-14 00:13:58,199 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2021-09-14 00:13:58,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:13:58,206 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:13:58,487 INFO L281 TraceCheckUtils]: 0: Hoare triple {21873#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {21873#true} is VALID [2021-09-14 00:13:58,488 INFO L281 TraceCheckUtils]: 1: Hoare triple {21873#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {21873#true} is VALID [2021-09-14 00:13:58,488 INFO L281 TraceCheckUtils]: 2: Hoare triple {21873#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {21873#true} is VALID [2021-09-14 00:13:58,488 INFO L281 TraceCheckUtils]: 3: Hoare triple {21873#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,489 INFO L281 TraceCheckUtils]: 4: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,489 INFO L281 TraceCheckUtils]: 5: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,489 INFO L264 TraceCheckUtils]: 6: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {21873#true} is VALID [2021-09-14 00:13:58,489 INFO L281 TraceCheckUtils]: 7: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,489 INFO L281 TraceCheckUtils]: 8: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,489 INFO L281 TraceCheckUtils]: 9: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,490 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #111#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,490 INFO L281 TraceCheckUtils]: 11: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,490 INFO L264 TraceCheckUtils]: 12: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {21873#true} is VALID [2021-09-14 00:13:58,490 INFO L281 TraceCheckUtils]: 13: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,490 INFO L281 TraceCheckUtils]: 14: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,491 INFO L281 TraceCheckUtils]: 15: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,491 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #113#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,491 INFO L281 TraceCheckUtils]: 17: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,492 INFO L281 TraceCheckUtils]: 18: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,492 INFO L281 TraceCheckUtils]: 19: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,492 INFO L264 TraceCheckUtils]: 20: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {21873#true} is VALID [2021-09-14 00:13:58,492 INFO L281 TraceCheckUtils]: 21: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,492 INFO L281 TraceCheckUtils]: 22: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,492 INFO L281 TraceCheckUtils]: 23: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,493 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #115#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,493 INFO L281 TraceCheckUtils]: 25: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,493 INFO L281 TraceCheckUtils]: 26: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,494 INFO L281 TraceCheckUtils]: 27: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,494 INFO L281 TraceCheckUtils]: 28: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,494 INFO L281 TraceCheckUtils]: 29: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,494 INFO L281 TraceCheckUtils]: 30: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,495 INFO L281 TraceCheckUtils]: 31: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:58,495 INFO L281 TraceCheckUtils]: 32: Hoare triple {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 <= 2147483647; {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:58,496 INFO L281 TraceCheckUtils]: 33: Hoare triple {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {21979#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:58,497 INFO L281 TraceCheckUtils]: 34: Hoare triple {21979#(<= ULTIMATE.start_main_~k~0 1)} assume !!(main_~k~0 <= main_~x~0); {21979#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:58,497 INFO L281 TraceCheckUtils]: 35: Hoare triple {21979#(<= ULTIMATE.start_main_~k~0 1)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {21986#(<= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:13:58,497 INFO L264 TraceCheckUtils]: 36: Hoare triple {21986#(<= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {21990#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:13:58,498 INFO L281 TraceCheckUtils]: 37: Hoare triple {21990#(<= |fact_#in~n| 1)} ~n := #in~n; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,498 INFO L281 TraceCheckUtils]: 38: Hoare triple {21994#(<= fact_~n 1)} assume !(~n <= 0); {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,498 INFO L281 TraceCheckUtils]: 39: Hoare triple {21994#(<= fact_~n 1)} assume ~n - 1 <= 2147483647; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,498 INFO L281 TraceCheckUtils]: 40: Hoare triple {21994#(<= fact_~n 1)} assume ~n - 1 >= -2147483648; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,499 INFO L264 TraceCheckUtils]: 41: Hoare triple {21994#(<= fact_~n 1)} call #t~ret0 := fact(~n - 1); {22007#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:58,499 INFO L281 TraceCheckUtils]: 42: Hoare triple {22007#(<= |fact_#in~n| 0)} ~n := #in~n; {22011#(<= fact_~n 0)} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 43: Hoare triple {22011#(<= fact_~n 0)} assume !(~n <= 0); {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 44: Hoare triple {21874#false} assume ~n - 1 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 45: Hoare triple {21874#false} assume ~n - 1 >= -2147483648; {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L264 TraceCheckUtils]: 46: Hoare triple {21874#false} call #t~ret0 := fact(~n - 1); {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 47: Hoare triple {21874#false} ~n := #in~n; {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 48: Hoare triple {21874#false} assume ~n <= 0;#res := 1; {21874#false} is VALID [2021-09-14 00:13:58,500 INFO L281 TraceCheckUtils]: 49: Hoare triple {21874#false} assume true; {21874#false} is VALID [2021-09-14 00:13:58,501 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {21874#false} {21874#false} #109#return; {21874#false} is VALID [2021-09-14 00:13:58,501 INFO L281 TraceCheckUtils]: 51: Hoare triple {21874#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,501 INFO L281 TraceCheckUtils]: 52: Hoare triple {21874#false} assume ~n * #t~ret0 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,501 INFO L281 TraceCheckUtils]: 53: Hoare triple {21874#false} assume !(~n * #t~ret0 >= -2147483648); {21874#false} is VALID [2021-09-14 00:13:58,501 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 33 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2021-09-14 00:13:58,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:13:58,766 INFO L281 TraceCheckUtils]: 53: Hoare triple {21874#false} assume !(~n * #t~ret0 >= -2147483648); {21874#false} is VALID [2021-09-14 00:13:58,766 INFO L281 TraceCheckUtils]: 52: Hoare triple {21874#false} assume ~n * #t~ret0 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 51: Hoare triple {21874#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,767 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {21873#true} {21874#false} #109#return; {21874#false} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 49: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 48: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 47: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,767 INFO L264 TraceCheckUtils]: 46: Hoare triple {21874#false} call #t~ret0 := fact(~n - 1); {21873#true} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 45: Hoare triple {21874#false} assume ~n - 1 >= -2147483648; {21874#false} is VALID [2021-09-14 00:13:58,767 INFO L281 TraceCheckUtils]: 44: Hoare triple {21874#false} assume ~n - 1 <= 2147483647; {21874#false} is VALID [2021-09-14 00:13:58,768 INFO L281 TraceCheckUtils]: 43: Hoare triple {22011#(<= fact_~n 0)} assume !(~n <= 0); {21874#false} is VALID [2021-09-14 00:13:58,768 INFO L281 TraceCheckUtils]: 42: Hoare triple {22007#(<= |fact_#in~n| 0)} ~n := #in~n; {22011#(<= fact_~n 0)} is VALID [2021-09-14 00:13:58,769 INFO L264 TraceCheckUtils]: 41: Hoare triple {21994#(<= fact_~n 1)} call #t~ret0 := fact(~n - 1); {22007#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:13:58,769 INFO L281 TraceCheckUtils]: 40: Hoare triple {21994#(<= fact_~n 1)} assume ~n - 1 >= -2147483648; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,770 INFO L281 TraceCheckUtils]: 39: Hoare triple {21994#(<= fact_~n 1)} assume ~n - 1 <= 2147483647; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,770 INFO L281 TraceCheckUtils]: 38: Hoare triple {21994#(<= fact_~n 1)} assume !(~n <= 0); {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,770 INFO L281 TraceCheckUtils]: 37: Hoare triple {21990#(<= |fact_#in~n| 1)} ~n := #in~n; {21994#(<= fact_~n 1)} is VALID [2021-09-14 00:13:58,771 INFO L264 TraceCheckUtils]: 36: Hoare triple {21986#(<= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {21990#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:13:58,771 INFO L281 TraceCheckUtils]: 35: Hoare triple {21979#(<= ULTIMATE.start_main_~k~0 1)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {21986#(<= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:13:58,771 INFO L281 TraceCheckUtils]: 34: Hoare triple {21979#(<= ULTIMATE.start_main_~k~0 1)} assume !!(main_~k~0 <= main_~x~0); {21979#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:58,772 INFO L281 TraceCheckUtils]: 33: Hoare triple {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {21979#(<= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:13:58,772 INFO L281 TraceCheckUtils]: 32: Hoare triple {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 <= 2147483647; {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:58,773 INFO L281 TraceCheckUtils]: 31: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {21972#(<= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:13:58,773 INFO L281 TraceCheckUtils]: 30: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,773 INFO L281 TraceCheckUtils]: 29: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,773 INFO L281 TraceCheckUtils]: 28: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,774 INFO L281 TraceCheckUtils]: 27: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,774 INFO L281 TraceCheckUtils]: 26: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,774 INFO L281 TraceCheckUtils]: 25: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,775 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #115#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,775 INFO L281 TraceCheckUtils]: 23: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,775 INFO L281 TraceCheckUtils]: 22: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,775 INFO L281 TraceCheckUtils]: 21: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,775 INFO L264 TraceCheckUtils]: 20: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {21873#true} is VALID [2021-09-14 00:13:58,775 INFO L281 TraceCheckUtils]: 19: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,776 INFO L281 TraceCheckUtils]: 18: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,776 INFO L281 TraceCheckUtils]: 17: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,776 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #113#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,777 INFO L281 TraceCheckUtils]: 15: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,777 INFO L281 TraceCheckUtils]: 14: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,777 INFO L281 TraceCheckUtils]: 13: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,777 INFO L264 TraceCheckUtils]: 12: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {21873#true} is VALID [2021-09-14 00:13:58,777 INFO L281 TraceCheckUtils]: 11: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,778 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {21873#true} {21887#(<= ULTIMATE.start_main_~k~0 0)} #111#return; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,778 INFO L281 TraceCheckUtils]: 9: Hoare triple {21873#true} assume true; {21873#true} is VALID [2021-09-14 00:13:58,778 INFO L281 TraceCheckUtils]: 8: Hoare triple {21873#true} assume ~n <= 0;#res := 1; {21873#true} is VALID [2021-09-14 00:13:58,778 INFO L281 TraceCheckUtils]: 7: Hoare triple {21873#true} ~n := #in~n; {21873#true} is VALID [2021-09-14 00:13:58,778 INFO L264 TraceCheckUtils]: 6: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {21873#true} is VALID [2021-09-14 00:13:58,778 INFO L281 TraceCheckUtils]: 5: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,779 INFO L281 TraceCheckUtils]: 4: Hoare triple {21887#(<= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,779 INFO L281 TraceCheckUtils]: 3: Hoare triple {21873#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {21887#(<= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:13:58,779 INFO L281 TraceCheckUtils]: 2: Hoare triple {21873#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {21873#true} is VALID [2021-09-14 00:13:58,779 INFO L281 TraceCheckUtils]: 1: Hoare triple {21873#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {21873#true} is VALID [2021-09-14 00:13:58,779 INFO L281 TraceCheckUtils]: 0: Hoare triple {21873#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {21873#true} is VALID [2021-09-14 00:13:58,779 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2021-09-14 00:13:58,780 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:13:58,780 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1502016775] [2021-09-14 00:13:58,780 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:13:58,780 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [585050193] [2021-09-14 00:13:58,780 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [585050193] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:13:58,780 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:13:58,780 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 10 [2021-09-14 00:13:58,780 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1014176142] [2021-09-14 00:13:58,782 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 54 [2021-09-14 00:13:58,782 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:13:58,782 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2021-09-14 00:13:58,815 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:13:58,815 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2021-09-14 00:13:58,815 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:13:58,816 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2021-09-14 00:13:58,816 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2021-09-14 00:13:58,816 INFO L87 Difference]: Start difference. First operand 327 states and 444 transitions. Second operand has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2021-09-14 00:14:00,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:00,271 INFO L93 Difference]: Finished difference Result 668 states and 885 transitions. [2021-09-14 00:14:00,271 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2021-09-14 00:14:00,271 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 54 [2021-09-14 00:14:00,272 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:00,272 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2021-09-14 00:14:00,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 301 transitions. [2021-09-14 00:14:00,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2021-09-14 00:14:00,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 301 transitions. [2021-09-14 00:14:00,280 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 301 transitions. [2021-09-14 00:14:00,504 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 301 edges. 301 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:00,514 INFO L225 Difference]: With dead ends: 668 [2021-09-14 00:14:00,514 INFO L226 Difference]: Without dead ends: 374 [2021-09-14 00:14:00,515 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 99 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 75.82ms TimeCoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2021-09-14 00:14:00,516 INFO L928 BasicCegarLoop]: 27 mSDtfsCounter, 125 mSDsluCounter, 603 mSDsCounter, 0 mSdLazyCounter, 707 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 500.77ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 130 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 739 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 3.14ms SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 707 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 504.25ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:00,516 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [130 Valid, 176 Invalid, 739 Unknown, 0 Unchecked, 3.14ms Time], IncrementalHoareTripleChecker [32 Valid, 707 Invalid, 0 Unknown, 0 Unchecked, 504.25ms Time] [2021-09-14 00:14:00,520 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 374 states. [2021-09-14 00:14:00,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 374 to 326. [2021-09-14 00:14:00,744 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:00,744 INFO L82 GeneralOperation]: Start isEquivalent. First operand 374 states. Second operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) [2021-09-14 00:14:00,745 INFO L74 IsIncluded]: Start isIncluded. First operand 374 states. Second operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) [2021-09-14 00:14:00,745 INFO L87 Difference]: Start difference. First operand 374 states. Second operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) [2021-09-14 00:14:00,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:00,752 INFO L93 Difference]: Finished difference Result 374 states and 470 transitions. [2021-09-14 00:14:00,752 INFO L276 IsEmpty]: Start isEmpty. Operand 374 states and 470 transitions. [2021-09-14 00:14:00,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:00,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:00,753 INFO L74 IsIncluded]: Start isIncluded. First operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) Second operand 374 states. [2021-09-14 00:14:00,754 INFO L87 Difference]: Start difference. First operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) Second operand 374 states. [2021-09-14 00:14:00,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:00,760 INFO L93 Difference]: Finished difference Result 374 states and 470 transitions. [2021-09-14 00:14:00,761 INFO L276 IsEmpty]: Start isEmpty. Operand 374 states and 470 transitions. [2021-09-14 00:14:00,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:00,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:00,761 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:00,762 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:00,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 326 states, 257 states have (on average 1.2801556420233462) internal successors, (329), 263 states have internal predecessors, (329), 42 states have call successors, (42), 9 states have call predecessors, (42), 12 states have return successors, (67), 53 states have call predecessors, (67), 42 states have call successors, (67) [2021-09-14 00:14:00,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 326 states to 326 states and 438 transitions. [2021-09-14 00:14:00,768 INFO L78 Accepts]: Start accepts. Automaton has 326 states and 438 transitions. Word has length 54 [2021-09-14 00:14:00,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:00,769 INFO L470 AbstractCegarLoop]: Abstraction has 326 states and 438 transitions. [2021-09-14 00:14:00,769 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2021-09-14 00:14:00,769 INFO L276 IsEmpty]: Start isEmpty. Operand 326 states and 438 transitions. [2021-09-14 00:14:00,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2021-09-14 00:14:00,769 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:00,770 INFO L513 BasicCegarLoop]: trace histogram [6, 5, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:00,788 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:00,984 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:00,985 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:00,985 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:00,985 INFO L82 PathProgramCache]: Analyzing trace with hash 448565911, now seen corresponding path program 1 times [2021-09-14 00:14:00,985 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:00,985 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1858588290] [2021-09-14 00:14:00,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:00,985 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:00,990 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:00,990 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [558162721] [2021-09-14 00:14:00,990 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:00,990 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:00,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:00,991 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:00,992 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2021-09-14 00:14:01,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:01,018 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 6 conjunts are in the unsatisfiable core [2021-09-14 00:14:01,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:01,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:01,267 INFO L281 TraceCheckUtils]: 0: Hoare triple {24164#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {24164#true} is VALID [2021-09-14 00:14:01,267 INFO L281 TraceCheckUtils]: 1: Hoare triple {24164#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {24164#true} is VALID [2021-09-14 00:14:01,267 INFO L281 TraceCheckUtils]: 2: Hoare triple {24164#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 3: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 4: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 5: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,268 INFO L264 TraceCheckUtils]: 6: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {24164#true} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 7: Hoare triple {24164#true} ~n := #in~n; {24164#true} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 8: Hoare triple {24164#true} assume ~n <= 0;#res := 1; {24164#true} is VALID [2021-09-14 00:14:01,268 INFO L281 TraceCheckUtils]: 9: Hoare triple {24164#true} assume true; {24164#true} is VALID [2021-09-14 00:14:01,269 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {24164#true} {24175#(<= ULTIMATE.start_main_~n~0 0)} #111#return; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,269 INFO L281 TraceCheckUtils]: 11: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,269 INFO L264 TraceCheckUtils]: 12: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {24164#true} is VALID [2021-09-14 00:14:01,269 INFO L281 TraceCheckUtils]: 13: Hoare triple {24164#true} ~n := #in~n; {24164#true} is VALID [2021-09-14 00:14:01,269 INFO L281 TraceCheckUtils]: 14: Hoare triple {24164#true} assume ~n <= 0;#res := 1; {24164#true} is VALID [2021-09-14 00:14:01,269 INFO L281 TraceCheckUtils]: 15: Hoare triple {24164#true} assume true; {24164#true} is VALID [2021-09-14 00:14:01,270 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {24164#true} {24175#(<= ULTIMATE.start_main_~n~0 0)} #113#return; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,270 INFO L281 TraceCheckUtils]: 17: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,270 INFO L281 TraceCheckUtils]: 18: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,271 INFO L281 TraceCheckUtils]: 19: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,271 INFO L264 TraceCheckUtils]: 20: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {24164#true} is VALID [2021-09-14 00:14:01,271 INFO L281 TraceCheckUtils]: 21: Hoare triple {24164#true} ~n := #in~n; {24164#true} is VALID [2021-09-14 00:14:01,271 INFO L281 TraceCheckUtils]: 22: Hoare triple {24164#true} assume ~n <= 0;#res := 1; {24164#true} is VALID [2021-09-14 00:14:01,271 INFO L281 TraceCheckUtils]: 23: Hoare triple {24164#true} assume true; {24164#true} is VALID [2021-09-14 00:14:01,271 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {24164#true} {24175#(<= ULTIMATE.start_main_~n~0 0)} #115#return; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,272 INFO L281 TraceCheckUtils]: 25: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,272 INFO L281 TraceCheckUtils]: 26: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,272 INFO L281 TraceCheckUtils]: 27: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,272 INFO L281 TraceCheckUtils]: 28: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,273 INFO L281 TraceCheckUtils]: 29: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,273 INFO L281 TraceCheckUtils]: 30: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,273 INFO L281 TraceCheckUtils]: 31: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,273 INFO L281 TraceCheckUtils]: 32: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 33: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 34: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {24175#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 35: Hoare triple {24175#(<= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:14:01,274 INFO L264 TraceCheckUtils]: 36: Hoare triple {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {24164#true} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 37: Hoare triple {24164#true} ~n := #in~n; {24164#true} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 38: Hoare triple {24164#true} assume !(~n <= 0); {24164#true} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 39: Hoare triple {24164#true} assume ~n - 1 <= 2147483647; {24164#true} is VALID [2021-09-14 00:14:01,274 INFO L281 TraceCheckUtils]: 40: Hoare triple {24164#true} assume ~n - 1 >= -2147483648; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L264 TraceCheckUtils]: 41: Hoare triple {24164#true} call #t~ret0 := fact(~n - 1); {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 42: Hoare triple {24164#true} ~n := #in~n; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 43: Hoare triple {24164#true} assume ~n <= 0;#res := 1; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 44: Hoare triple {24164#true} assume true; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {24164#true} {24164#true} #109#return; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 46: Hoare triple {24164#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 47: Hoare triple {24164#true} assume ~n * #t~ret0 <= 2147483647; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 48: Hoare triple {24164#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L281 TraceCheckUtils]: 49: Hoare triple {24164#true} assume true; {24164#true} is VALID [2021-09-14 00:14:01,275 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {24164#true} {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} #117#return; {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:14:01,276 INFO L281 TraceCheckUtils]: 51: Hoare triple {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} is VALID [2021-09-14 00:14:01,276 INFO L264 TraceCheckUtils]: 52: Hoare triple {24275#(<= ULTIMATE.start_binomialCoefficient_~k 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {24327#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:14:01,276 INFO L281 TraceCheckUtils]: 53: Hoare triple {24327#(<= |fact_#in~n| 0)} ~n := #in~n; {24331#(<= fact_~n 0)} is VALID [2021-09-14 00:14:01,277 INFO L281 TraceCheckUtils]: 54: Hoare triple {24331#(<= fact_~n 0)} assume !(~n <= 0); {24331#(<= fact_~n 0)} is VALID [2021-09-14 00:14:01,277 INFO L281 TraceCheckUtils]: 55: Hoare triple {24331#(<= fact_~n 0)} assume !(~n - 1 <= 2147483647); {24165#false} is VALID [2021-09-14 00:14:01,277 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2021-09-14 00:14:01,277 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:01,277 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:01,277 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1858588290] [2021-09-14 00:14:01,277 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:01,278 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [558162721] [2021-09-14 00:14:01,278 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [558162721] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:01,278 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:01,278 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2021-09-14 00:14:01,278 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [969170663] [2021-09-14 00:14:01,278 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 56 [2021-09-14 00:14:01,278 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:01,278 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2021-09-14 00:14:01,308 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:01,308 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2021-09-14 00:14:01,308 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:01,308 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2021-09-14 00:14:01,308 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2021-09-14 00:14:01,309 INFO L87 Difference]: Start difference. First operand 326 states and 438 transitions. Second operand has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2021-09-14 00:14:02,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:02,047 INFO L93 Difference]: Finished difference Result 622 states and 828 transitions. [2021-09-14 00:14:02,047 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2021-09-14 00:14:02,047 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 56 [2021-09-14 00:14:02,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:02,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2021-09-14 00:14:02,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 209 transitions. [2021-09-14 00:14:02,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2021-09-14 00:14:02,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 209 transitions. [2021-09-14 00:14:02,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 209 transitions. [2021-09-14 00:14:02,217 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:02,223 INFO L225 Difference]: With dead ends: 622 [2021-09-14 00:14:02,223 INFO L226 Difference]: Without dead ends: 338 [2021-09-14 00:14:02,223 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 20.53ms TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:14:02,224 INFO L928 BasicCegarLoop]: 18 mSDtfsCounter, 58 mSDsluCounter, 305 mSDsCounter, 0 mSdLazyCounter, 319 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 210.15ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 334 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.36ms SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 319 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 211.54ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:02,224 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 75 Invalid, 334 Unknown, 0 Unchecked, 1.36ms Time], IncrementalHoareTripleChecker [15 Valid, 319 Invalid, 0 Unknown, 0 Unchecked, 211.54ms Time] [2021-09-14 00:14:02,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 338 states. [2021-09-14 00:14:02,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 338 to 326. [2021-09-14 00:14:02,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:02,446 INFO L82 GeneralOperation]: Start isEquivalent. First operand 338 states. Second operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) [2021-09-14 00:14:02,447 INFO L74 IsIncluded]: Start isIncluded. First operand 338 states. Second operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) [2021-09-14 00:14:02,447 INFO L87 Difference]: Start difference. First operand 338 states. Second operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) [2021-09-14 00:14:02,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:02,452 INFO L93 Difference]: Finished difference Result 338 states and 436 transitions. [2021-09-14 00:14:02,452 INFO L276 IsEmpty]: Start isEmpty. Operand 338 states and 436 transitions. [2021-09-14 00:14:02,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:02,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:02,454 INFO L74 IsIncluded]: Start isIncluded. First operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) Second operand 338 states. [2021-09-14 00:14:02,454 INFO L87 Difference]: Start difference. First operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) Second operand 338 states. [2021-09-14 00:14:02,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:02,460 INFO L93 Difference]: Finished difference Result 338 states and 436 transitions. [2021-09-14 00:14:02,460 INFO L276 IsEmpty]: Start isEmpty. Operand 338 states and 436 transitions. [2021-09-14 00:14:02,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:02,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:02,461 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:02,461 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:02,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 326 states, 257 states have (on average 1.272373540856031) internal successors, (327), 263 states have internal predecessors, (327), 40 states have call successors, (40), 11 states have call predecessors, (40), 14 states have return successors, (61), 51 states have call predecessors, (61), 40 states have call successors, (61) [2021-09-14 00:14:02,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 326 states to 326 states and 428 transitions. [2021-09-14 00:14:02,467 INFO L78 Accepts]: Start accepts. Automaton has 326 states and 428 transitions. Word has length 56 [2021-09-14 00:14:02,467 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:02,467 INFO L470 AbstractCegarLoop]: Abstraction has 326 states and 428 transitions. [2021-09-14 00:14:02,467 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2021-09-14 00:14:02,467 INFO L276 IsEmpty]: Start isEmpty. Operand 326 states and 428 transitions. [2021-09-14 00:14:02,468 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2021-09-14 00:14:02,468 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:02,468 INFO L513 BasicCegarLoop]: trace histogram [6, 6, 5, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:02,494 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:02,684 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2021-09-14 00:14:02,684 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:02,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:02,685 INFO L82 PathProgramCache]: Analyzing trace with hash 1583287798, now seen corresponding path program 1 times [2021-09-14 00:14:02,685 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:02,685 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1501231186] [2021-09-14 00:14:02,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:02,685 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:02,691 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:02,691 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [201306987] [2021-09-14 00:14:02,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:02,691 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:02,691 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:02,692 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:02,705 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2021-09-14 00:14:02,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:02,732 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 9 conjunts are in the unsatisfiable core [2021-09-14 00:14:02,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:02,741 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:03,121 INFO L281 TraceCheckUtils]: 0: Hoare triple {26165#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {26165#true} is VALID [2021-09-14 00:14:03,121 INFO L281 TraceCheckUtils]: 1: Hoare triple {26165#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {26165#true} is VALID [2021-09-14 00:14:03,122 INFO L281 TraceCheckUtils]: 2: Hoare triple {26165#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {26176#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:03,122 INFO L281 TraceCheckUtils]: 3: Hoare triple {26176#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,122 INFO L281 TraceCheckUtils]: 4: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,123 INFO L281 TraceCheckUtils]: 5: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,123 INFO L264 TraceCheckUtils]: 6: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {26165#true} is VALID [2021-09-14 00:14:03,123 INFO L281 TraceCheckUtils]: 7: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,123 INFO L281 TraceCheckUtils]: 8: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,123 INFO L281 TraceCheckUtils]: 9: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,124 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {26165#true} {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #111#return; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,124 INFO L281 TraceCheckUtils]: 11: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,124 INFO L264 TraceCheckUtils]: 12: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,124 INFO L281 TraceCheckUtils]: 13: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,124 INFO L281 TraceCheckUtils]: 14: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,124 INFO L281 TraceCheckUtils]: 15: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,125 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {26165#true} {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #113#return; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,125 INFO L281 TraceCheckUtils]: 17: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,125 INFO L281 TraceCheckUtils]: 18: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,126 INFO L281 TraceCheckUtils]: 19: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,126 INFO L264 TraceCheckUtils]: 20: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,126 INFO L281 TraceCheckUtils]: 21: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,126 INFO L281 TraceCheckUtils]: 22: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,126 INFO L281 TraceCheckUtils]: 23: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,126 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {26165#true} {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #115#return; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,127 INFO L281 TraceCheckUtils]: 25: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,127 INFO L281 TraceCheckUtils]: 26: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,127 INFO L281 TraceCheckUtils]: 27: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,128 INFO L281 TraceCheckUtils]: 28: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,129 INFO L281 TraceCheckUtils]: 29: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,129 INFO L281 TraceCheckUtils]: 30: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,129 INFO L281 TraceCheckUtils]: 31: Hoare triple {26180#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {26265#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,130 INFO L281 TraceCheckUtils]: 32: Hoare triple {26265#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {26265#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,131 INFO L281 TraceCheckUtils]: 33: Hoare triple {26265#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {26272#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,131 INFO L281 TraceCheckUtils]: 34: Hoare triple {26272#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {26272#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,132 INFO L281 TraceCheckUtils]: 35: Hoare triple {26272#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,132 INFO L264 TraceCheckUtils]: 36: Hoare triple {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {26165#true} is VALID [2021-09-14 00:14:03,132 INFO L281 TraceCheckUtils]: 37: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,132 INFO L281 TraceCheckUtils]: 38: Hoare triple {26165#true} assume !(~n <= 0); {26165#true} is VALID [2021-09-14 00:14:03,132 INFO L281 TraceCheckUtils]: 39: Hoare triple {26165#true} assume ~n - 1 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,132 INFO L281 TraceCheckUtils]: 40: Hoare triple {26165#true} assume ~n - 1 >= -2147483648; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L264 TraceCheckUtils]: 41: Hoare triple {26165#true} call #t~ret0 := fact(~n - 1); {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 42: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 43: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 44: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {26165#true} {26165#true} #109#return; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 46: Hoare triple {26165#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 47: Hoare triple {26165#true} assume ~n * #t~ret0 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,133 INFO L281 TraceCheckUtils]: 48: Hoare triple {26165#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {26165#true} is VALID [2021-09-14 00:14:03,134 INFO L281 TraceCheckUtils]: 49: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,134 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {26165#true} {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,135 INFO L281 TraceCheckUtils]: 51: Hoare triple {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,135 INFO L264 TraceCheckUtils]: 52: Hoare triple {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,135 INFO L281 TraceCheckUtils]: 53: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,135 INFO L281 TraceCheckUtils]: 54: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,135 INFO L281 TraceCheckUtils]: 55: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,136 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {26165#true} {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,136 INFO L281 TraceCheckUtils]: 57: Hoare triple {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,137 INFO L281 TraceCheckUtils]: 58: Hoare triple {26279#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume !(binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647); {26166#false} is VALID [2021-09-14 00:14:03,137 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2021-09-14 00:14:03,137 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:03,471 INFO L281 TraceCheckUtils]: 58: Hoare triple {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume !(binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647); {26166#false} is VALID [2021-09-14 00:14:03,472 INFO L281 TraceCheckUtils]: 57: Hoare triple {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,472 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {26165#true} {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,472 INFO L281 TraceCheckUtils]: 55: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,472 INFO L281 TraceCheckUtils]: 54: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,472 INFO L281 TraceCheckUtils]: 53: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,472 INFO L264 TraceCheckUtils]: 52: Hoare triple {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 51: Hoare triple {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,473 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {26165#true} {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 49: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 48: Hoare triple {26165#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 47: Hoare triple {26165#true} assume ~n * #t~ret0 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 46: Hoare triple {26165#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {26165#true} {26165#true} #109#return; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 44: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 43: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,473 INFO L281 TraceCheckUtils]: 42: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L264 TraceCheckUtils]: 41: Hoare triple {26165#true} call #t~ret0 := fact(~n - 1); {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 40: Hoare triple {26165#true} assume ~n - 1 >= -2147483648; {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 39: Hoare triple {26165#true} assume ~n - 1 <= 2147483647; {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 38: Hoare triple {26165#true} assume !(~n <= 0); {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 37: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L264 TraceCheckUtils]: 36: Hoare triple {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {26165#true} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 35: Hoare triple {26419#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {26349#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:03,474 INFO L281 TraceCheckUtils]: 34: Hoare triple {26419#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {26419#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,476 INFO L281 TraceCheckUtils]: 33: Hoare triple {26426#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {26419#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:03,476 INFO L281 TraceCheckUtils]: 32: Hoare triple {26426#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} assume 1 + main_#t~post8 <= 2147483647; {26426#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,476 INFO L281 TraceCheckUtils]: 31: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} main_#t~post8 := main_~k~0; {26426#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,476 INFO L281 TraceCheckUtils]: 30: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,477 INFO L281 TraceCheckUtils]: 29: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,477 INFO L281 TraceCheckUtils]: 28: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,479 INFO L281 TraceCheckUtils]: 27: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,480 INFO L281 TraceCheckUtils]: 26: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,480 INFO L281 TraceCheckUtils]: 25: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,480 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {26165#true} {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #115#return; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,480 INFO L281 TraceCheckUtils]: 23: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,480 INFO L281 TraceCheckUtils]: 22: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,481 INFO L281 TraceCheckUtils]: 21: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,481 INFO L264 TraceCheckUtils]: 20: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,481 INFO L281 TraceCheckUtils]: 19: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,481 INFO L281 TraceCheckUtils]: 18: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,481 INFO L281 TraceCheckUtils]: 17: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,482 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {26165#true} {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #113#return; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,482 INFO L281 TraceCheckUtils]: 15: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,482 INFO L281 TraceCheckUtils]: 14: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,482 INFO L281 TraceCheckUtils]: 13: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,482 INFO L264 TraceCheckUtils]: 12: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {26165#true} is VALID [2021-09-14 00:14:03,482 INFO L281 TraceCheckUtils]: 11: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,483 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {26165#true} {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #111#return; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,483 INFO L281 TraceCheckUtils]: 9: Hoare triple {26165#true} assume true; {26165#true} is VALID [2021-09-14 00:14:03,483 INFO L281 TraceCheckUtils]: 8: Hoare triple {26165#true} assume ~n <= 0;#res := 1; {26165#true} is VALID [2021-09-14 00:14:03,483 INFO L281 TraceCheckUtils]: 7: Hoare triple {26165#true} ~n := #in~n; {26165#true} is VALID [2021-09-14 00:14:03,483 INFO L264 TraceCheckUtils]: 6: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {26165#true} is VALID [2021-09-14 00:14:03,483 INFO L281 TraceCheckUtils]: 5: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,483 INFO L281 TraceCheckUtils]: 4: Hoare triple {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume !!(main_~k~0 <= main_~x~0); {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,484 INFO L281 TraceCheckUtils]: 3: Hoare triple {26518#(<= 0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {26433#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,484 INFO L281 TraceCheckUtils]: 2: Hoare triple {26165#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {26518#(<= 0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:03,487 INFO L281 TraceCheckUtils]: 1: Hoare triple {26165#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {26165#true} is VALID [2021-09-14 00:14:03,487 INFO L281 TraceCheckUtils]: 0: Hoare triple {26165#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {26165#true} is VALID [2021-09-14 00:14:03,487 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2021-09-14 00:14:03,487 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:03,487 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1501231186] [2021-09-14 00:14:03,487 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:03,488 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [201306987] [2021-09-14 00:14:03,488 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [201306987] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:03,488 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:03,488 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 11 [2021-09-14 00:14:03,488 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [231188509] [2021-09-14 00:14:03,488 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 59 [2021-09-14 00:14:03,488 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:03,489 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:03,546 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:03,546 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2021-09-14 00:14:03,546 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:03,546 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2021-09-14 00:14:03,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2021-09-14 00:14:03,547 INFO L87 Difference]: Start difference. First operand 326 states and 428 transitions. Second operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:05,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:05,224 INFO L93 Difference]: Finished difference Result 400 states and 516 transitions. [2021-09-14 00:14:05,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2021-09-14 00:14:05,224 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 59 [2021-09-14 00:14:05,224 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:05,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:05,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 196 transitions. [2021-09-14 00:14:05,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:05,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 196 transitions. [2021-09-14 00:14:05,227 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 196 transitions. [2021-09-14 00:14:05,398 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:05,405 INFO L225 Difference]: With dead ends: 400 [2021-09-14 00:14:05,405 INFO L226 Difference]: Without dead ends: 399 [2021-09-14 00:14:05,405 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 106 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 109 ImplicationChecksByTransitivity, 205.47ms TimeCoverageRelationStatistics Valid=168, Invalid=384, Unknown=0, NotChecked=0, Total=552 [2021-09-14 00:14:05,406 INFO L928 BasicCegarLoop]: 26 mSDtfsCounter, 258 mSDsluCounter, 449 mSDsCounter, 0 mSdLazyCounter, 572 mSolverCounterSat, 62 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 484.68ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 259 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 634 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.46ms SdHoareTripleChecker+Time, 62 IncrementalHoareTripleChecker+Valid, 572 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 487.25ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:05,406 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [259 Valid, 109 Invalid, 634 Unknown, 0 Unchecked, 2.46ms Time], IncrementalHoareTripleChecker [62 Valid, 572 Invalid, 0 Unknown, 0 Unchecked, 487.25ms Time] [2021-09-14 00:14:05,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 399 states. [2021-09-14 00:14:05,695 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 399 to 342. [2021-09-14 00:14:05,695 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:05,696 INFO L82 GeneralOperation]: Start isEquivalent. First operand 399 states. Second operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) [2021-09-14 00:14:05,696 INFO L74 IsIncluded]: Start isIncluded. First operand 399 states. Second operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) [2021-09-14 00:14:05,696 INFO L87 Difference]: Start difference. First operand 399 states. Second operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) [2021-09-14 00:14:05,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:05,704 INFO L93 Difference]: Finished difference Result 399 states and 510 transitions. [2021-09-14 00:14:05,704 INFO L276 IsEmpty]: Start isEmpty. Operand 399 states and 510 transitions. [2021-09-14 00:14:05,705 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:05,705 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:05,706 INFO L74 IsIncluded]: Start isIncluded. First operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) Second operand 399 states. [2021-09-14 00:14:05,706 INFO L87 Difference]: Start difference. First operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) Second operand 399 states. [2021-09-14 00:14:05,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:05,714 INFO L93 Difference]: Finished difference Result 399 states and 510 transitions. [2021-09-14 00:14:05,714 INFO L276 IsEmpty]: Start isEmpty. Operand 399 states and 510 transitions. [2021-09-14 00:14:05,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:05,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:05,715 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:05,715 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:05,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 342 states, 269 states have (on average 1.2602230483271375) internal successors, (339), 273 states have internal predecessors, (339), 44 states have call successors, (44), 11 states have call predecessors, (44), 14 states have return successors, (67), 57 states have call predecessors, (67), 44 states have call successors, (67) [2021-09-14 00:14:05,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 342 states to 342 states and 450 transitions. [2021-09-14 00:14:05,725 INFO L78 Accepts]: Start accepts. Automaton has 342 states and 450 transitions. Word has length 59 [2021-09-14 00:14:05,725 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:05,725 INFO L470 AbstractCegarLoop]: Abstraction has 342 states and 450 transitions. [2021-09-14 00:14:05,725 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 5 states have call successors, (11), 1 states have call predecessors, (11), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:05,725 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 450 transitions. [2021-09-14 00:14:05,726 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2021-09-14 00:14:05,726 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:05,726 INFO L513 BasicCegarLoop]: trace histogram [7, 6, 5, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:05,744 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:05,940 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:05,941 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:05,941 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:05,941 INFO L82 PathProgramCache]: Analyzing trace with hash -1646027842, now seen corresponding path program 1 times [2021-09-14 00:14:05,941 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:05,941 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [379924718] [2021-09-14 00:14:05,941 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:05,942 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:05,945 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:05,945 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1002749053] [2021-09-14 00:14:05,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:05,945 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:05,945 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:05,947 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:05,949 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2021-09-14 00:14:05,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:05,978 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 11 conjunts are in the unsatisfiable core [2021-09-14 00:14:05,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:05,987 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:06,551 INFO L281 TraceCheckUtils]: 0: Hoare triple {28248#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {28248#true} is VALID [2021-09-14 00:14:06,551 INFO L281 TraceCheckUtils]: 1: Hoare triple {28248#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {28248#true} is VALID [2021-09-14 00:14:06,552 INFO L281 TraceCheckUtils]: 2: Hoare triple {28248#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {28259#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:06,552 INFO L281 TraceCheckUtils]: 3: Hoare triple {28259#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,553 INFO L281 TraceCheckUtils]: 4: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,553 INFO L281 TraceCheckUtils]: 5: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,553 INFO L264 TraceCheckUtils]: 6: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {28248#true} is VALID [2021-09-14 00:14:06,553 INFO L281 TraceCheckUtils]: 7: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,554 INFO L281 TraceCheckUtils]: 8: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,554 INFO L281 TraceCheckUtils]: 9: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,554 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {28248#true} {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #111#return; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,555 INFO L281 TraceCheckUtils]: 11: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,555 INFO L264 TraceCheckUtils]: 12: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:06,555 INFO L281 TraceCheckUtils]: 13: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,555 INFO L281 TraceCheckUtils]: 14: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,555 INFO L281 TraceCheckUtils]: 15: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,556 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {28248#true} {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #113#return; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,556 INFO L281 TraceCheckUtils]: 17: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,557 INFO L281 TraceCheckUtils]: 18: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,557 INFO L281 TraceCheckUtils]: 19: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,557 INFO L264 TraceCheckUtils]: 20: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:06,558 INFO L281 TraceCheckUtils]: 21: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,558 INFO L281 TraceCheckUtils]: 22: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,558 INFO L281 TraceCheckUtils]: 23: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,558 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {28248#true} {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #115#return; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,559 INFO L281 TraceCheckUtils]: 25: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,559 INFO L281 TraceCheckUtils]: 26: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,560 INFO L281 TraceCheckUtils]: 27: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,560 INFO L281 TraceCheckUtils]: 28: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,561 INFO L281 TraceCheckUtils]: 29: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,561 INFO L281 TraceCheckUtils]: 30: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,561 INFO L281 TraceCheckUtils]: 31: Hoare triple {28263#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {28348#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,562 INFO L281 TraceCheckUtils]: 32: Hoare triple {28348#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {28348#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,563 INFO L281 TraceCheckUtils]: 33: Hoare triple {28348#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {28355#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,564 INFO L281 TraceCheckUtils]: 34: Hoare triple {28355#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {28355#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,564 INFO L281 TraceCheckUtils]: 35: Hoare triple {28355#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,565 INFO L264 TraceCheckUtils]: 36: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 37: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 38: Hoare triple {28248#true} assume !(~n <= 0); {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 39: Hoare triple {28248#true} assume ~n - 1 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 40: Hoare triple {28248#true} assume ~n - 1 >= -2147483648; {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L264 TraceCheckUtils]: 41: Hoare triple {28248#true} call #t~ret0 := fact(~n - 1); {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 42: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 43: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,565 INFO L281 TraceCheckUtils]: 44: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,566 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {28248#true} {28248#true} #109#return; {28248#true} is VALID [2021-09-14 00:14:06,566 INFO L281 TraceCheckUtils]: 46: Hoare triple {28248#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,566 INFO L281 TraceCheckUtils]: 47: Hoare triple {28248#true} assume ~n * #t~ret0 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,566 INFO L281 TraceCheckUtils]: 48: Hoare triple {28248#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {28248#true} is VALID [2021-09-14 00:14:06,566 INFO L281 TraceCheckUtils]: 49: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,567 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {28248#true} {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,567 INFO L281 TraceCheckUtils]: 51: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,567 INFO L264 TraceCheckUtils]: 52: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:06,567 INFO L281 TraceCheckUtils]: 53: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,567 INFO L281 TraceCheckUtils]: 54: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,568 INFO L281 TraceCheckUtils]: 55: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,568 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {28248#true} {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,569 INFO L281 TraceCheckUtils]: 57: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,569 INFO L281 TraceCheckUtils]: 58: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,569 INFO L281 TraceCheckUtils]: 59: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:06,570 INFO L264 TraceCheckUtils]: 60: Hoare triple {28362#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {28438#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:06,570 INFO L281 TraceCheckUtils]: 61: Hoare triple {28438#(<= |fact_#in~n| 1)} ~n := #in~n; {28442#(<= fact_~n 1)} is VALID [2021-09-14 00:14:06,571 INFO L281 TraceCheckUtils]: 62: Hoare triple {28442#(<= fact_~n 1)} assume !(~n <= 0); {28442#(<= fact_~n 1)} is VALID [2021-09-14 00:14:06,571 INFO L281 TraceCheckUtils]: 63: Hoare triple {28442#(<= fact_~n 1)} assume !(~n - 1 <= 2147483647); {28249#false} is VALID [2021-09-14 00:14:06,571 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 13 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2021-09-14 00:14:06,572 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:06,988 INFO L281 TraceCheckUtils]: 63: Hoare triple {28449#(<= fact_~n 2147483648)} assume !(~n - 1 <= 2147483647); {28249#false} is VALID [2021-09-14 00:14:06,989 INFO L281 TraceCheckUtils]: 62: Hoare triple {28449#(<= fact_~n 2147483648)} assume !(~n <= 0); {28449#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:14:06,989 INFO L281 TraceCheckUtils]: 61: Hoare triple {28456#(<= |fact_#in~n| 2147483648)} ~n := #in~n; {28449#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:14:06,990 INFO L264 TraceCheckUtils]: 60: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {28456#(<= |fact_#in~n| 2147483648)} is VALID [2021-09-14 00:14:06,990 INFO L281 TraceCheckUtils]: 59: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,991 INFO L281 TraceCheckUtils]: 58: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,991 INFO L281 TraceCheckUtils]: 57: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,991 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {28248#true} {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} #119#return; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,991 INFO L281 TraceCheckUtils]: 55: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,991 INFO L281 TraceCheckUtils]: 54: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,992 INFO L281 TraceCheckUtils]: 53: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,992 INFO L264 TraceCheckUtils]: 52: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:06,992 INFO L281 TraceCheckUtils]: 51: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,992 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {28248#true} {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} #117#return; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,992 INFO L281 TraceCheckUtils]: 49: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,992 INFO L281 TraceCheckUtils]: 48: Hoare triple {28248#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {28248#true} is VALID [2021-09-14 00:14:06,992 INFO L281 TraceCheckUtils]: 47: Hoare triple {28248#true} assume ~n * #t~ret0 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 46: Hoare triple {28248#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {28248#true} {28248#true} #109#return; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 44: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 43: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 42: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L264 TraceCheckUtils]: 41: Hoare triple {28248#true} call #t~ret0 := fact(~n - 1); {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 40: Hoare triple {28248#true} assume ~n - 1 >= -2147483648; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 39: Hoare triple {28248#true} assume ~n - 1 <= 2147483647; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 38: Hoare triple {28248#true} assume !(~n <= 0); {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 37: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L264 TraceCheckUtils]: 36: Hoare triple {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {28248#true} is VALID [2021-09-14 00:14:06,993 INFO L281 TraceCheckUtils]: 35: Hoare triple {28536#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483648))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {28460#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 2147483648))} is VALID [2021-09-14 00:14:06,994 INFO L281 TraceCheckUtils]: 34: Hoare triple {28536#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483648))} assume !!(main_~k~0 <= main_~x~0); {28536#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483648))} is VALID [2021-09-14 00:14:06,995 INFO L281 TraceCheckUtils]: 33: Hoare triple {28543#(<= |ULTIMATE.start_main_#t~post8| (+ 2147483647 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {28536#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483648))} is VALID [2021-09-14 00:14:06,995 INFO L281 TraceCheckUtils]: 32: Hoare triple {28543#(<= |ULTIMATE.start_main_#t~post8| (+ 2147483647 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {28543#(<= |ULTIMATE.start_main_#t~post8| (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,995 INFO L281 TraceCheckUtils]: 31: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {28543#(<= |ULTIMATE.start_main_#t~post8| (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,996 INFO L281 TraceCheckUtils]: 30: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,996 INFO L281 TraceCheckUtils]: 29: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,996 INFO L281 TraceCheckUtils]: 28: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,996 INFO L281 TraceCheckUtils]: 27: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,997 INFO L281 TraceCheckUtils]: 26: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,997 INFO L281 TraceCheckUtils]: 25: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,997 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {28248#true} {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} #115#return; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:06,997 INFO L281 TraceCheckUtils]: 23: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:06,997 INFO L281 TraceCheckUtils]: 22: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:06,998 INFO L281 TraceCheckUtils]: 21: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:06,998 INFO L264 TraceCheckUtils]: 20: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:07,003 INFO L281 TraceCheckUtils]: 19: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,003 INFO L281 TraceCheckUtils]: 18: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,004 INFO L281 TraceCheckUtils]: 17: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,004 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {28248#true} {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} #113#return; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,004 INFO L281 TraceCheckUtils]: 15: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:07,004 INFO L281 TraceCheckUtils]: 14: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:07,004 INFO L281 TraceCheckUtils]: 13: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:07,004 INFO L264 TraceCheckUtils]: 12: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {28248#true} is VALID [2021-09-14 00:14:07,004 INFO L281 TraceCheckUtils]: 11: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,005 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {28248#true} {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} #111#return; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,005 INFO L281 TraceCheckUtils]: 9: Hoare triple {28248#true} assume true; {28248#true} is VALID [2021-09-14 00:14:07,005 INFO L281 TraceCheckUtils]: 8: Hoare triple {28248#true} assume ~n <= 0;#res := 1; {28248#true} is VALID [2021-09-14 00:14:07,005 INFO L281 TraceCheckUtils]: 7: Hoare triple {28248#true} ~n := #in~n; {28248#true} is VALID [2021-09-14 00:14:07,005 INFO L264 TraceCheckUtils]: 6: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {28248#true} is VALID [2021-09-14 00:14:07,005 INFO L281 TraceCheckUtils]: 5: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,006 INFO L281 TraceCheckUtils]: 4: Hoare triple {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,007 INFO L281 TraceCheckUtils]: 3: Hoare triple {28635#(<= 0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {28550#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,007 INFO L281 TraceCheckUtils]: 2: Hoare triple {28248#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {28635#(<= 0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:07,007 INFO L281 TraceCheckUtils]: 1: Hoare triple {28248#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {28248#true} is VALID [2021-09-14 00:14:07,007 INFO L281 TraceCheckUtils]: 0: Hoare triple {28248#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {28248#true} is VALID [2021-09-14 00:14:07,007 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 13 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2021-09-14 00:14:07,008 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:07,008 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [379924718] [2021-09-14 00:14:07,008 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:07,008 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1002749053] [2021-09-14 00:14:07,008 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1002749053] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:07,008 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:07,008 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 15 [2021-09-14 00:14:07,008 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1456543220] [2021-09-14 00:14:07,008 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 64 [2021-09-14 00:14:07,009 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:07,009 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:07,076 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:07,077 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2021-09-14 00:14:07,077 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:07,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2021-09-14 00:14:07,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=194, Unknown=0, NotChecked=0, Total=240 [2021-09-14 00:14:07,077 INFO L87 Difference]: Start difference. First operand 342 states and 450 transitions. Second operand has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:09,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:09,538 INFO L93 Difference]: Finished difference Result 468 states and 587 transitions. [2021-09-14 00:14:09,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2021-09-14 00:14:09,538 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 64 [2021-09-14 00:14:09,538 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:09,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:09,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 234 transitions. [2021-09-14 00:14:09,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:09,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 234 transitions. [2021-09-14 00:14:09,541 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 234 transitions. [2021-09-14 00:14:09,762 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:09,772 INFO L225 Difference]: With dead ends: 468 [2021-09-14 00:14:09,772 INFO L226 Difference]: Without dead ends: 465 [2021-09-14 00:14:09,772 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 114 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 334.65ms TimeCoverageRelationStatistics Valid=196, Invalid=734, Unknown=0, NotChecked=0, Total=930 [2021-09-14 00:14:09,773 INFO L928 BasicCegarLoop]: 18 mSDtfsCounter, 286 mSDsluCounter, 519 mSDsCounter, 0 mSdLazyCounter, 887 mSolverCounterSat, 84 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 780.01ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 290 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 971 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 3.77ms SdHoareTripleChecker+Time, 84 IncrementalHoareTripleChecker+Valid, 887 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 784.34ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:09,773 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [290 Valid, 98 Invalid, 971 Unknown, 0 Unchecked, 3.77ms Time], IncrementalHoareTripleChecker [84 Valid, 887 Invalid, 0 Unknown, 0 Unchecked, 784.34ms Time] [2021-09-14 00:14:09,773 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 465 states. [2021-09-14 00:14:10,087 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 465 to 402. [2021-09-14 00:14:10,087 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:10,088 INFO L82 GeneralOperation]: Start isEquivalent. First operand 465 states. Second operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) [2021-09-14 00:14:10,088 INFO L74 IsIncluded]: Start isIncluded. First operand 465 states. Second operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) [2021-09-14 00:14:10,089 INFO L87 Difference]: Start difference. First operand 465 states. Second operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) [2021-09-14 00:14:10,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:10,098 INFO L93 Difference]: Finished difference Result 465 states and 583 transitions. [2021-09-14 00:14:10,098 INFO L276 IsEmpty]: Start isEmpty. Operand 465 states and 583 transitions. [2021-09-14 00:14:10,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:10,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:10,100 INFO L74 IsIncluded]: Start isIncluded. First operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) Second operand 465 states. [2021-09-14 00:14:10,100 INFO L87 Difference]: Start difference. First operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) Second operand 465 states. [2021-09-14 00:14:10,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:10,109 INFO L93 Difference]: Finished difference Result 465 states and 583 transitions. [2021-09-14 00:14:10,110 INFO L276 IsEmpty]: Start isEmpty. Operand 465 states and 583 transitions. [2021-09-14 00:14:10,111 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:10,111 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:10,111 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:10,111 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:10,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 402 states, 316 states have (on average 1.2563291139240507) internal successors, (397), 321 states have internal predecessors, (397), 49 states have call successors, (49), 17 states have call predecessors, (49), 22 states have return successors, (73), 63 states have call predecessors, (73), 49 states have call successors, (73) [2021-09-14 00:14:10,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 402 states to 402 states and 519 transitions. [2021-09-14 00:14:10,120 INFO L78 Accepts]: Start accepts. Automaton has 402 states and 519 transitions. Word has length 64 [2021-09-14 00:14:10,120 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:10,120 INFO L470 AbstractCegarLoop]: Abstraction has 402 states and 519 transitions. [2021-09-14 00:14:10,120 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 4.2) internal successors, (63), 14 states have internal predecessors, (63), 5 states have call successors, (13), 3 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2021-09-14 00:14:10,120 INFO L276 IsEmpty]: Start isEmpty. Operand 402 states and 519 transitions. [2021-09-14 00:14:10,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2021-09-14 00:14:10,121 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:10,121 INFO L513 BasicCegarLoop]: trace histogram [7, 7, 6, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:10,141 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:10,337 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:10,337 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr10ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:10,338 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:10,338 INFO L82 PathProgramCache]: Analyzing trace with hash 1045826931, now seen corresponding path program 1 times [2021-09-14 00:14:10,338 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:10,338 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1698572666] [2021-09-14 00:14:10,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:10,338 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:10,344 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:10,344 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1759859435] [2021-09-14 00:14:10,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:10,344 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:10,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:10,345 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:10,346 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2021-09-14 00:14:10,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:10,376 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 11 conjunts are in the unsatisfiable core [2021-09-14 00:14:10,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:10,385 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:10,905 INFO L281 TraceCheckUtils]: 0: Hoare triple {30655#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {30655#true} is VALID [2021-09-14 00:14:10,905 INFO L281 TraceCheckUtils]: 1: Hoare triple {30655#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {30655#true} is VALID [2021-09-14 00:14:10,905 INFO L281 TraceCheckUtils]: 2: Hoare triple {30655#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {30666#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:10,906 INFO L281 TraceCheckUtils]: 3: Hoare triple {30666#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,906 INFO L281 TraceCheckUtils]: 4: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume !!(main_~k~0 <= main_~x~0); {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,907 INFO L281 TraceCheckUtils]: 5: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,907 INFO L264 TraceCheckUtils]: 6: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {30655#true} is VALID [2021-09-14 00:14:10,907 INFO L281 TraceCheckUtils]: 7: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,907 INFO L281 TraceCheckUtils]: 8: Hoare triple {30655#true} assume ~n <= 0;#res := 1; {30655#true} is VALID [2021-09-14 00:14:10,907 INFO L281 TraceCheckUtils]: 9: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,908 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {30655#true} {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} #111#return; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,908 INFO L281 TraceCheckUtils]: 11: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,908 INFO L264 TraceCheckUtils]: 12: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {30655#true} is VALID [2021-09-14 00:14:10,908 INFO L281 TraceCheckUtils]: 13: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,909 INFO L281 TraceCheckUtils]: 14: Hoare triple {30655#true} assume ~n <= 0;#res := 1; {30655#true} is VALID [2021-09-14 00:14:10,909 INFO L281 TraceCheckUtils]: 15: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,909 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {30655#true} {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} #113#return; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,910 INFO L281 TraceCheckUtils]: 17: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,910 INFO L281 TraceCheckUtils]: 18: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,910 INFO L281 TraceCheckUtils]: 19: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,910 INFO L264 TraceCheckUtils]: 20: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {30655#true} is VALID [2021-09-14 00:14:10,911 INFO L281 TraceCheckUtils]: 21: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,911 INFO L281 TraceCheckUtils]: 22: Hoare triple {30655#true} assume ~n <= 0;#res := 1; {30655#true} is VALID [2021-09-14 00:14:10,911 INFO L281 TraceCheckUtils]: 23: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,911 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {30655#true} {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} #115#return; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,912 INFO L281 TraceCheckUtils]: 25: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,912 INFO L281 TraceCheckUtils]: 26: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,913 INFO L281 TraceCheckUtils]: 27: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,913 INFO L281 TraceCheckUtils]: 28: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,914 INFO L281 TraceCheckUtils]: 29: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,914 INFO L281 TraceCheckUtils]: 30: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,914 INFO L281 TraceCheckUtils]: 31: Hoare triple {30670#(and (<= 0 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} main_#t~post8 := main_~k~0; {30755#(and (<= 0 |ULTIMATE.start_main_#t~post8|) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,915 INFO L281 TraceCheckUtils]: 32: Hoare triple {30755#(and (<= 0 |ULTIMATE.start_main_#t~post8|) (<= ULTIMATE.start_main_~n~0 0))} assume 1 + main_#t~post8 <= 2147483647; {30755#(and (<= 0 |ULTIMATE.start_main_#t~post8|) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,916 INFO L281 TraceCheckUtils]: 33: Hoare triple {30755#(and (<= 0 |ULTIMATE.start_main_#t~post8|) (<= ULTIMATE.start_main_~n~0 0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {30762#(and (<= 1 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,917 INFO L281 TraceCheckUtils]: 34: Hoare triple {30762#(and (<= 1 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume !!(main_~k~0 <= main_~x~0); {30762#(and (<= 1 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} is VALID [2021-09-14 00:14:10,917 INFO L281 TraceCheckUtils]: 35: Hoare triple {30762#(and (<= 1 ULTIMATE.start_main_~k~0) (<= ULTIMATE.start_main_~n~0 0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,917 INFO L264 TraceCheckUtils]: 36: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 37: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 38: Hoare triple {30655#true} assume !(~n <= 0); {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 39: Hoare triple {30655#true} assume ~n - 1 <= 2147483647; {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 40: Hoare triple {30655#true} assume ~n - 1 >= -2147483648; {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L264 TraceCheckUtils]: 41: Hoare triple {30655#true} call #t~ret0 := fact(~n - 1); {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 42: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 43: Hoare triple {30655#true} assume ~n <= 0;#res := 1; {30655#true} is VALID [2021-09-14 00:14:10,918 INFO L281 TraceCheckUtils]: 44: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,919 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {30655#true} {30655#true} #109#return; {30655#true} is VALID [2021-09-14 00:14:10,919 INFO L281 TraceCheckUtils]: 46: Hoare triple {30655#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {30655#true} is VALID [2021-09-14 00:14:10,919 INFO L281 TraceCheckUtils]: 47: Hoare triple {30655#true} assume ~n * #t~ret0 <= 2147483647; {30655#true} is VALID [2021-09-14 00:14:10,919 INFO L281 TraceCheckUtils]: 48: Hoare triple {30655#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {30655#true} is VALID [2021-09-14 00:14:10,919 INFO L281 TraceCheckUtils]: 49: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,920 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {30655#true} {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} #117#return; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,920 INFO L281 TraceCheckUtils]: 51: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,920 INFO L264 TraceCheckUtils]: 52: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {30655#true} is VALID [2021-09-14 00:14:10,920 INFO L281 TraceCheckUtils]: 53: Hoare triple {30655#true} ~n := #in~n; {30655#true} is VALID [2021-09-14 00:14:10,920 INFO L281 TraceCheckUtils]: 54: Hoare triple {30655#true} assume ~n <= 0;#res := 1; {30655#true} is VALID [2021-09-14 00:14:10,920 INFO L281 TraceCheckUtils]: 55: Hoare triple {30655#true} assume true; {30655#true} is VALID [2021-09-14 00:14:10,921 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {30655#true} {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} #119#return; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,921 INFO L281 TraceCheckUtils]: 57: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,922 INFO L281 TraceCheckUtils]: 58: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,922 INFO L281 TraceCheckUtils]: 59: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} is VALID [2021-09-14 00:14:10,922 INFO L264 TraceCheckUtils]: 60: Hoare triple {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {30655#true} is VALID [2021-09-14 00:14:10,923 INFO L281 TraceCheckUtils]: 61: Hoare triple {30655#true} ~n := #in~n; {30848#(<= |fact_#in~n| fact_~n)} is VALID [2021-09-14 00:14:10,924 INFO L281 TraceCheckUtils]: 62: Hoare triple {30848#(<= |fact_#in~n| fact_~n)} assume ~n <= 0;#res := 1; {30852#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:14:10,925 INFO L281 TraceCheckUtils]: 63: Hoare triple {30852#(<= |fact_#in~n| 0)} assume true; {30852#(<= |fact_#in~n| 0)} is VALID [2021-09-14 00:14:10,925 INFO L276 TraceCheckUtils]: 64: Hoare quadruple {30852#(<= |fact_#in~n| 0)} {30769#(and (<= ULTIMATE.start_binomialCoefficient_~k 0) (<= 1 ULTIMATE.start_binomialCoefficient_~n))} #121#return; {30656#false} is VALID [2021-09-14 00:14:10,925 INFO L281 TraceCheckUtils]: 65: Hoare triple {30656#false} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {30656#false} is VALID [2021-09-14 00:14:10,926 INFO L281 TraceCheckUtils]: 66: Hoare triple {30656#false} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {30656#false} is VALID [2021-09-14 00:14:10,926 INFO L281 TraceCheckUtils]: 67: Hoare triple {30656#false} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {30656#false} is VALID [2021-09-14 00:14:10,926 INFO L281 TraceCheckUtils]: 68: Hoare triple {30656#false} assume !((if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647); {30656#false} is VALID [2021-09-14 00:14:10,926 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2021-09-14 00:14:10,926 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:10,926 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:10,926 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1698572666] [2021-09-14 00:14:10,927 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:10,927 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1759859435] [2021-09-14 00:14:10,927 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1759859435] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:10,927 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:10,927 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2021-09-14 00:14:10,927 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1992438519] [2021-09-14 00:14:10,928 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2021-09-14 00:14:10,929 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:10,929 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2021-09-14 00:14:10,972 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:10,972 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2021-09-14 00:14:10,972 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:10,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2021-09-14 00:14:10,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:14:10,973 INFO L87 Difference]: Start difference. First operand 402 states and 519 transitions. Second operand has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2021-09-14 00:14:12,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:12,260 INFO L93 Difference]: Finished difference Result 729 states and 952 transitions. [2021-09-14 00:14:12,261 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2021-09-14 00:14:12,261 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2021-09-14 00:14:12,261 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:12,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2021-09-14 00:14:12,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 210 transitions. [2021-09-14 00:14:12,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2021-09-14 00:14:12,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 210 transitions. [2021-09-14 00:14:12,263 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 210 transitions. [2021-09-14 00:14:12,424 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:12,432 INFO L225 Difference]: With dead ends: 729 [2021-09-14 00:14:12,432 INFO L226 Difference]: Without dead ends: 407 [2021-09-14 00:14:12,433 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 78.22ms TimeCoverageRelationStatistics Valid=43, Invalid=113, Unknown=0, NotChecked=0, Total=156 [2021-09-14 00:14:12,434 INFO L928 BasicCegarLoop]: 7 mSDtfsCounter, 89 mSDsluCounter, 297 mSDsCounter, 0 mSdLazyCounter, 545 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 412.02ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 558 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.54ms SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 545 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 414.15ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:12,434 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 31 Invalid, 558 Unknown, 0 Unchecked, 1.54ms Time], IncrementalHoareTripleChecker [13 Valid, 545 Invalid, 0 Unknown, 0 Unchecked, 414.15ms Time] [2021-09-14 00:14:12,434 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 407 states. [2021-09-14 00:14:12,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 407 to 394. [2021-09-14 00:14:12,723 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:12,723 INFO L82 GeneralOperation]: Start isEquivalent. First operand 407 states. Second operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) [2021-09-14 00:14:12,724 INFO L74 IsIncluded]: Start isIncluded. First operand 407 states. Second operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) [2021-09-14 00:14:12,724 INFO L87 Difference]: Start difference. First operand 407 states. Second operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) [2021-09-14 00:14:12,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:12,737 INFO L93 Difference]: Finished difference Result 407 states and 521 transitions. [2021-09-14 00:14:12,737 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 521 transitions. [2021-09-14 00:14:12,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:12,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:12,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) Second operand 407 states. [2021-09-14 00:14:12,739 INFO L87 Difference]: Start difference. First operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) Second operand 407 states. [2021-09-14 00:14:12,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:12,747 INFO L93 Difference]: Finished difference Result 407 states and 521 transitions. [2021-09-14 00:14:12,747 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 521 transitions. [2021-09-14 00:14:12,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:12,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:12,748 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:12,748 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:12,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 394 states, 309 states have (on average 1.2588996763754046) internal successors, (389), 315 states have internal predecessors, (389), 49 states have call successors, (49), 17 states have call predecessors, (49), 21 states have return successors, (71), 61 states have call predecessors, (71), 49 states have call successors, (71) [2021-09-14 00:14:12,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 394 states to 394 states and 509 transitions. [2021-09-14 00:14:12,756 INFO L78 Accepts]: Start accepts. Automaton has 394 states and 509 transitions. Word has length 69 [2021-09-14 00:14:12,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:12,757 INFO L470 AbstractCegarLoop]: Abstraction has 394 states and 509 transitions. [2021-09-14 00:14:12,757 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.555555555555555) internal successors, (41), 9 states have internal predecessors, (41), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2021-09-14 00:14:12,757 INFO L276 IsEmpty]: Start isEmpty. Operand 394 states and 509 transitions. [2021-09-14 00:14:12,757 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2021-09-14 00:14:12,757 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:12,757 INFO L513 BasicCegarLoop]: trace histogram [8, 7, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:12,773 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:12,973 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable23 [2021-09-14 00:14:12,973 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:12,973 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:12,973 INFO L82 PathProgramCache]: Analyzing trace with hash -1450932827, now seen corresponding path program 1 times [2021-09-14 00:14:12,973 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:12,974 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894574792] [2021-09-14 00:14:12,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:12,974 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:12,977 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:12,977 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1167974938] [2021-09-14 00:14:12,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:12,977 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:12,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:12,979 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:12,980 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2021-09-14 00:14:13,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:13,014 INFO L263 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 15 conjunts are in the unsatisfiable core [2021-09-14 00:14:13,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:13,024 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:13,547 INFO L281 TraceCheckUtils]: 0: Hoare triple {33052#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {33052#true} is VALID [2021-09-14 00:14:13,547 INFO L281 TraceCheckUtils]: 1: Hoare triple {33052#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {33052#true} is VALID [2021-09-14 00:14:13,547 INFO L281 TraceCheckUtils]: 2: Hoare triple {33052#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {33063#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:13,547 INFO L281 TraceCheckUtils]: 3: Hoare triple {33063#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,548 INFO L281 TraceCheckUtils]: 4: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,548 INFO L281 TraceCheckUtils]: 5: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,548 INFO L264 TraceCheckUtils]: 6: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {33052#true} is VALID [2021-09-14 00:14:13,548 INFO L281 TraceCheckUtils]: 7: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,548 INFO L281 TraceCheckUtils]: 8: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:13,548 INFO L281 TraceCheckUtils]: 9: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,549 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {33052#true} {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #111#return; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,549 INFO L281 TraceCheckUtils]: 11: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,549 INFO L264 TraceCheckUtils]: 12: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:13,549 INFO L281 TraceCheckUtils]: 13: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,549 INFO L281 TraceCheckUtils]: 14: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:13,549 INFO L281 TraceCheckUtils]: 15: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,550 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {33052#true} {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #113#return; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,550 INFO L281 TraceCheckUtils]: 17: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,551 INFO L281 TraceCheckUtils]: 18: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,551 INFO L281 TraceCheckUtils]: 19: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,551 INFO L264 TraceCheckUtils]: 20: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:13,551 INFO L281 TraceCheckUtils]: 21: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,551 INFO L281 TraceCheckUtils]: 22: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:13,551 INFO L281 TraceCheckUtils]: 23: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,552 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {33052#true} {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #115#return; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,552 INFO L281 TraceCheckUtils]: 25: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,552 INFO L281 TraceCheckUtils]: 26: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,553 INFO L281 TraceCheckUtils]: 27: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,553 INFO L281 TraceCheckUtils]: 28: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,553 INFO L281 TraceCheckUtils]: 29: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,554 INFO L281 TraceCheckUtils]: 30: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,554 INFO L281 TraceCheckUtils]: 31: Hoare triple {33067#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {33152#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,564 INFO L281 TraceCheckUtils]: 32: Hoare triple {33152#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {33152#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,566 INFO L281 TraceCheckUtils]: 33: Hoare triple {33152#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {33159#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,566 INFO L281 TraceCheckUtils]: 34: Hoare triple {33159#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {33159#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 35: Hoare triple {33159#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,567 INFO L264 TraceCheckUtils]: 36: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 37: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 38: Hoare triple {33052#true} assume !(~n <= 0); {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 39: Hoare triple {33052#true} assume ~n - 1 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 40: Hoare triple {33052#true} assume ~n - 1 >= -2147483648; {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L264 TraceCheckUtils]: 41: Hoare triple {33052#true} call #t~ret0 := fact(~n - 1); {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 42: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 43: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:13,567 INFO L281 TraceCheckUtils]: 44: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {33052#true} {33052#true} #109#return; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L281 TraceCheckUtils]: 46: Hoare triple {33052#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L281 TraceCheckUtils]: 47: Hoare triple {33052#true} assume ~n * #t~ret0 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L281 TraceCheckUtils]: 48: Hoare triple {33052#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L281 TraceCheckUtils]: 49: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,568 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {33052#true} {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,569 INFO L281 TraceCheckUtils]: 51: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,569 INFO L264 TraceCheckUtils]: 52: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:13,569 INFO L281 TraceCheckUtils]: 53: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,569 INFO L281 TraceCheckUtils]: 54: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:13,569 INFO L281 TraceCheckUtils]: 55: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:13,569 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {33052#true} {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,570 INFO L281 TraceCheckUtils]: 57: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,570 INFO L281 TraceCheckUtils]: 58: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,570 INFO L281 TraceCheckUtils]: 59: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:13,571 INFO L264 TraceCheckUtils]: 60: Hoare triple {33166#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {33242#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:13,571 INFO L281 TraceCheckUtils]: 61: Hoare triple {33242#(<= |fact_#in~n| 1)} ~n := #in~n; {33246#(<= fact_~n 1)} is VALID [2021-09-14 00:14:13,571 INFO L281 TraceCheckUtils]: 62: Hoare triple {33246#(<= fact_~n 1)} assume !(~n <= 0); {33246#(<= fact_~n 1)} is VALID [2021-09-14 00:14:13,572 INFO L281 TraceCheckUtils]: 63: Hoare triple {33246#(<= fact_~n 1)} assume ~n - 1 <= 2147483647; {33246#(<= fact_~n 1)} is VALID [2021-09-14 00:14:13,572 INFO L281 TraceCheckUtils]: 64: Hoare triple {33246#(<= fact_~n 1)} assume ~n - 1 >= -2147483648; {33246#(<= fact_~n 1)} is VALID [2021-09-14 00:14:13,572 INFO L264 TraceCheckUtils]: 65: Hoare triple {33246#(<= fact_~n 1)} call #t~ret0 := fact(~n - 1); {33052#true} is VALID [2021-09-14 00:14:13,572 INFO L281 TraceCheckUtils]: 66: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:13,572 INFO L281 TraceCheckUtils]: 67: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33265#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:13,573 INFO L281 TraceCheckUtils]: 68: Hoare triple {33265#(= |fact_#res| 1)} assume true; {33265#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:13,573 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {33265#(= |fact_#res| 1)} {33246#(<= fact_~n 1)} #109#return; {33272#(and (= |fact_#t~ret0| 1) (<= fact_~n 1))} is VALID [2021-09-14 00:14:13,573 INFO L281 TraceCheckUtils]: 70: Hoare triple {33272#(and (= |fact_#t~ret0| 1) (<= fact_~n 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {33272#(and (= |fact_#t~ret0| 1) (<= fact_~n 1))} is VALID [2021-09-14 00:14:13,574 INFO L281 TraceCheckUtils]: 71: Hoare triple {33272#(and (= |fact_#t~ret0| 1) (<= fact_~n 1))} assume !(~n * #t~ret0 <= 2147483647); {33053#false} is VALID [2021-09-14 00:14:13,574 INFO L134 CoverageAnalysis]: Checked inductivity of 105 backedges. 29 proven. 4 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2021-09-14 00:14:13,574 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:14,606 INFO L281 TraceCheckUtils]: 71: Hoare triple {33279#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume !(~n * #t~ret0 <= 2147483647); {33053#false} is VALID [2021-09-14 00:14:14,607 INFO L281 TraceCheckUtils]: 70: Hoare triple {33279#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {33279#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:14:14,608 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {33290#(forall ((v_fact_~n_BEFORE_CALL_5 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_5) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_5)))} {33286#(<= fact_~n 2147483647)} #109#return; {33279#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:14:14,608 INFO L281 TraceCheckUtils]: 68: Hoare triple {33290#(forall ((v_fact_~n_BEFORE_CALL_5 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_5) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_5)))} assume true; {33290#(forall ((v_fact_~n_BEFORE_CALL_5 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_5) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_5)))} is VALID [2021-09-14 00:14:14,609 INFO L281 TraceCheckUtils]: 67: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33290#(forall ((v_fact_~n_BEFORE_CALL_5 Int)) (or (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_5) 2147483647) (< 2147483647 v_fact_~n_BEFORE_CALL_5)))} is VALID [2021-09-14 00:14:14,609 INFO L281 TraceCheckUtils]: 66: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,609 INFO L264 TraceCheckUtils]: 65: Hoare triple {33286#(<= fact_~n 2147483647)} call #t~ret0 := fact(~n - 1); {33052#true} is VALID [2021-09-14 00:14:14,609 INFO L281 TraceCheckUtils]: 64: Hoare triple {33286#(<= fact_~n 2147483647)} assume ~n - 1 >= -2147483648; {33286#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:14,609 INFO L281 TraceCheckUtils]: 63: Hoare triple {33286#(<= fact_~n 2147483647)} assume ~n - 1 <= 2147483647; {33286#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:14,610 INFO L281 TraceCheckUtils]: 62: Hoare triple {33286#(<= fact_~n 2147483647)} assume !(~n <= 0); {33286#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:14,610 INFO L281 TraceCheckUtils]: 61: Hoare triple {33312#(<= |fact_#in~n| 2147483647)} ~n := #in~n; {33286#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:14,611 INFO L264 TraceCheckUtils]: 60: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {33312#(<= |fact_#in~n| 2147483647)} is VALID [2021-09-14 00:14:14,611 INFO L281 TraceCheckUtils]: 59: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,612 INFO L281 TraceCheckUtils]: 58: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,612 INFO L281 TraceCheckUtils]: 57: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,612 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {33052#true} {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,612 INFO L281 TraceCheckUtils]: 55: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,612 INFO L281 TraceCheckUtils]: 54: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:14,613 INFO L281 TraceCheckUtils]: 53: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,613 INFO L264 TraceCheckUtils]: 52: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:14,613 INFO L281 TraceCheckUtils]: 51: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,613 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {33052#true} {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,613 INFO L281 TraceCheckUtils]: 49: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,613 INFO L281 TraceCheckUtils]: 48: Hoare triple {33052#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 47: Hoare triple {33052#true} assume ~n * #t~ret0 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 46: Hoare triple {33052#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {33052#true} {33052#true} #109#return; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 44: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 43: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 42: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L264 TraceCheckUtils]: 41: Hoare triple {33052#true} call #t~ret0 := fact(~n - 1); {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 40: Hoare triple {33052#true} assume ~n - 1 >= -2147483648; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 39: Hoare triple {33052#true} assume ~n - 1 <= 2147483647; {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 38: Hoare triple {33052#true} assume !(~n <= 0); {33052#true} is VALID [2021-09-14 00:14:14,614 INFO L281 TraceCheckUtils]: 37: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,615 INFO L264 TraceCheckUtils]: 36: Hoare triple {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {33052#true} is VALID [2021-09-14 00:14:14,617 INFO L281 TraceCheckUtils]: 35: Hoare triple {33392#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {33316#(<= ULTIMATE.start_binomialCoefficient_~n (+ 2147483647 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:14,617 INFO L281 TraceCheckUtils]: 34: Hoare triple {33392#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {33392#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:14,619 INFO L281 TraceCheckUtils]: 33: Hoare triple {33399#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {33392#(<= ULTIMATE.start_main_~k~0 (+ 2147483647 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:14,619 INFO L281 TraceCheckUtils]: 32: Hoare triple {33399#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} assume 1 + main_#t~post8 <= 2147483647; {33399#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,620 INFO L281 TraceCheckUtils]: 31: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} main_#t~post8 := main_~k~0; {33399#(<= |ULTIMATE.start_main_#t~post8| (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,620 INFO L281 TraceCheckUtils]: 30: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,620 INFO L281 TraceCheckUtils]: 29: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,620 INFO L281 TraceCheckUtils]: 28: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,624 INFO L281 TraceCheckUtils]: 27: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,625 INFO L281 TraceCheckUtils]: 26: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,625 INFO L281 TraceCheckUtils]: 25: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,626 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {33052#true} {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #115#return; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,626 INFO L281 TraceCheckUtils]: 23: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,626 INFO L281 TraceCheckUtils]: 22: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:14,626 INFO L281 TraceCheckUtils]: 21: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,626 INFO L264 TraceCheckUtils]: 20: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:14,627 INFO L281 TraceCheckUtils]: 19: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,627 INFO L281 TraceCheckUtils]: 18: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,627 INFO L281 TraceCheckUtils]: 17: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,628 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {33052#true} {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #113#return; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,628 INFO L281 TraceCheckUtils]: 15: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,628 INFO L281 TraceCheckUtils]: 14: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:14,628 INFO L281 TraceCheckUtils]: 13: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,628 INFO L264 TraceCheckUtils]: 12: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {33052#true} is VALID [2021-09-14 00:14:14,629 INFO L281 TraceCheckUtils]: 11: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,629 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {33052#true} {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} #111#return; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,629 INFO L281 TraceCheckUtils]: 9: Hoare triple {33052#true} assume true; {33052#true} is VALID [2021-09-14 00:14:14,630 INFO L281 TraceCheckUtils]: 8: Hoare triple {33052#true} assume ~n <= 0;#res := 1; {33052#true} is VALID [2021-09-14 00:14:14,630 INFO L281 TraceCheckUtils]: 7: Hoare triple {33052#true} ~n := #in~n; {33052#true} is VALID [2021-09-14 00:14:14,630 INFO L264 TraceCheckUtils]: 6: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {33052#true} is VALID [2021-09-14 00:14:14,630 INFO L281 TraceCheckUtils]: 5: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,630 INFO L281 TraceCheckUtils]: 4: Hoare triple {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume !!(main_~k~0 <= main_~x~0); {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,631 INFO L281 TraceCheckUtils]: 3: Hoare triple {33491#(<= 0 (+ ULTIMATE.start_main_~n~0 2147483646))} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {33406#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,631 INFO L281 TraceCheckUtils]: 2: Hoare triple {33052#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {33491#(<= 0 (+ ULTIMATE.start_main_~n~0 2147483646))} is VALID [2021-09-14 00:14:14,631 INFO L281 TraceCheckUtils]: 1: Hoare triple {33052#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {33052#true} is VALID [2021-09-14 00:14:14,632 INFO L281 TraceCheckUtils]: 0: Hoare triple {33052#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {33052#true} is VALID [2021-09-14 00:14:14,632 INFO L134 CoverageAnalysis]: Checked inductivity of 105 backedges. 29 proven. 4 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2021-09-14 00:14:14,632 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:14,632 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1894574792] [2021-09-14 00:14:14,632 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:14,632 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1167974938] [2021-09-14 00:14:14,632 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1167974938] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:14,633 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:14,633 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 19 [2021-09-14 00:14:14,633 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [786236295] [2021-09-14 00:14:14,634 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) Word has length 72 [2021-09-14 00:14:14,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:14,634 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:14,743 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:14,743 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2021-09-14 00:14:14,743 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:14,743 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2021-09-14 00:14:14,743 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=322, Unknown=0, NotChecked=0, Total=380 [2021-09-14 00:14:14,743 INFO L87 Difference]: Start difference. First operand 394 states and 509 transitions. Second operand has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:18,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:18,923 INFO L93 Difference]: Finished difference Result 483 states and 607 transitions. [2021-09-14 00:14:18,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2021-09-14 00:14:18,923 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) Word has length 72 [2021-09-14 00:14:18,924 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:18,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:18,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 241 transitions. [2021-09-14 00:14:18,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:18,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 241 transitions. [2021-09-14 00:14:18,927 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states and 241 transitions. [2021-09-14 00:14:19,179 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 241 edges. 241 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:19,189 INFO L225 Difference]: With dead ends: 483 [2021-09-14 00:14:19,189 INFO L226 Difference]: Without dead ends: 482 [2021-09-14 00:14:19,189 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 129 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 332 ImplicationChecksByTransitivity, 1034.82ms TimeCoverageRelationStatistics Valid=256, Invalid=1304, Unknown=0, NotChecked=0, Total=1560 [2021-09-14 00:14:19,190 INFO L928 BasicCegarLoop]: 19 mSDtfsCounter, 270 mSDsluCounter, 798 mSDsCounter, 0 mSdLazyCounter, 1156 mSolverCounterSat, 88 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1134.18ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 272 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 1357 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 4.57ms SdHoareTripleChecker+Time, 88 IncrementalHoareTripleChecker+Valid, 1156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 113 IncrementalHoareTripleChecker+Unchecked, 1139.92ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:19,190 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [272 Valid, 174 Invalid, 1357 Unknown, 0 Unchecked, 4.57ms Time], IncrementalHoareTripleChecker [88 Valid, 1156 Invalid, 0 Unknown, 113 Unchecked, 1139.92ms Time] [2021-09-14 00:14:19,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 482 states. [2021-09-14 00:14:19,505 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 482 to 416. [2021-09-14 00:14:19,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:19,506 INFO L82 GeneralOperation]: Start isEquivalent. First operand 482 states. Second operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:19,506 INFO L74 IsIncluded]: Start isIncluded. First operand 482 states. Second operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:19,506 INFO L87 Difference]: Start difference. First operand 482 states. Second operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:19,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:19,515 INFO L93 Difference]: Finished difference Result 482 states and 603 transitions. [2021-09-14 00:14:19,516 INFO L276 IsEmpty]: Start isEmpty. Operand 482 states and 603 transitions. [2021-09-14 00:14:19,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:19,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:19,517 INFO L74 IsIncluded]: Start isIncluded. First operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) Second operand 482 states. [2021-09-14 00:14:19,517 INFO L87 Difference]: Start difference. First operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) Second operand 482 states. [2021-09-14 00:14:19,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:19,526 INFO L93 Difference]: Finished difference Result 482 states and 603 transitions. [2021-09-14 00:14:19,526 INFO L276 IsEmpty]: Start isEmpty. Operand 482 states and 603 transitions. [2021-09-14 00:14:19,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:19,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:19,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:19,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:19,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 416 states, 327 states have (on average 1.253822629969419) internal successors, (410), 331 states have internal predecessors, (410), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:19,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 416 states to 416 states and 536 transitions. [2021-09-14 00:14:19,536 INFO L78 Accepts]: Start accepts. Automaton has 416 states and 536 transitions. Word has length 72 [2021-09-14 00:14:19,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:19,536 INFO L470 AbstractCegarLoop]: Abstraction has 416 states and 536 transitions. [2021-09-14 00:14:19,537 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 3.8421052631578947) internal successors, (73), 18 states have internal predecessors, (73), 7 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:19,537 INFO L276 IsEmpty]: Start isEmpty. Operand 416 states and 536 transitions. [2021-09-14 00:14:19,537 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2021-09-14 00:14:19,537 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:19,537 INFO L513 BasicCegarLoop]: trace histogram [8, 7, 6, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:19,555 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:19,748 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:19,749 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting factErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:19,749 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:19,749 INFO L82 PathProgramCache]: Analyzing trace with hash -2029244633, now seen corresponding path program 1 times [2021-09-14 00:14:19,749 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:19,749 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [538342857] [2021-09-14 00:14:19,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:19,750 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:19,753 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:19,753 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1925269402] [2021-09-14 00:14:19,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:19,754 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:19,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:19,754 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:19,755 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2021-09-14 00:14:19,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:19,786 INFO L263 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 5 conjunts are in the unsatisfiable core [2021-09-14 00:14:19,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:19,793 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:20,044 INFO L281 TraceCheckUtils]: 0: Hoare triple {35591#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 1: Hoare triple {35591#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 2: Hoare triple {35591#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 3: Hoare triple {35591#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 4: Hoare triple {35591#true} assume !!(main_~k~0 <= main_~x~0); {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 5: Hoare triple {35591#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L264 TraceCheckUtils]: 6: Hoare triple {35591#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 7: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 8: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 9: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {35591#true} {35591#true} #111#return; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 11: Hoare triple {35591#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L264 TraceCheckUtils]: 12: Hoare triple {35591#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {35591#true} is VALID [2021-09-14 00:14:20,045 INFO L281 TraceCheckUtils]: 13: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 14: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 15: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {35591#true} {35591#true} #113#return; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 17: Hoare triple {35591#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 18: Hoare triple {35591#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 19: Hoare triple {35591#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L264 TraceCheckUtils]: 20: Hoare triple {35591#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 21: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 22: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 23: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {35591#true} {35591#true} #115#return; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 25: Hoare triple {35591#true} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 26: Hoare triple {35591#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 27: Hoare triple {35591#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 28: Hoare triple {35591#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 29: Hoare triple {35591#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {35591#true} is VALID [2021-09-14 00:14:20,046 INFO L281 TraceCheckUtils]: 30: Hoare triple {35591#true} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 31: Hoare triple {35591#true} main_#t~post8 := main_~k~0; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 32: Hoare triple {35591#true} assume 1 + main_#t~post8 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 33: Hoare triple {35591#true} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 34: Hoare triple {35591#true} assume !!(main_~k~0 <= main_~x~0); {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 35: Hoare triple {35591#true} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L264 TraceCheckUtils]: 36: Hoare triple {35591#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 37: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 38: Hoare triple {35591#true} assume !(~n <= 0); {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 39: Hoare triple {35591#true} assume ~n - 1 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 40: Hoare triple {35591#true} assume ~n - 1 >= -2147483648; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L264 TraceCheckUtils]: 41: Hoare triple {35591#true} call #t~ret0 := fact(~n - 1); {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 42: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 43: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 44: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {35591#true} {35591#true} #109#return; {35591#true} is VALID [2021-09-14 00:14:20,047 INFO L281 TraceCheckUtils]: 46: Hoare triple {35591#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 47: Hoare triple {35591#true} assume ~n * #t~ret0 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 48: Hoare triple {35591#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 49: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {35591#true} {35591#true} #117#return; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 51: Hoare triple {35591#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L264 TraceCheckUtils]: 52: Hoare triple {35591#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 53: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,048 INFO L281 TraceCheckUtils]: 54: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L281 TraceCheckUtils]: 55: Hoare triple {35591#true} assume true; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {35591#true} {35591#true} #119#return; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L281 TraceCheckUtils]: 57: Hoare triple {35591#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L281 TraceCheckUtils]: 58: Hoare triple {35591#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L281 TraceCheckUtils]: 59: Hoare triple {35591#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L264 TraceCheckUtils]: 60: Hoare triple {35591#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {35591#true} is VALID [2021-09-14 00:14:20,049 INFO L281 TraceCheckUtils]: 61: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,051 INFO L281 TraceCheckUtils]: 62: Hoare triple {35591#true} assume !(~n <= 0); {35782#(< 0 fact_~n)} is VALID [2021-09-14 00:14:20,052 INFO L281 TraceCheckUtils]: 63: Hoare triple {35782#(< 0 fact_~n)} assume ~n - 1 <= 2147483647; {35786#(and (<= fact_~n 2147483648) (< 0 fact_~n))} is VALID [2021-09-14 00:14:20,052 INFO L281 TraceCheckUtils]: 64: Hoare triple {35786#(and (<= fact_~n 2147483648) (< 0 fact_~n))} assume ~n - 1 >= -2147483648; {35786#(and (<= fact_~n 2147483648) (< 0 fact_~n))} is VALID [2021-09-14 00:14:20,052 INFO L264 TraceCheckUtils]: 65: Hoare triple {35786#(and (<= fact_~n 2147483648) (< 0 fact_~n))} call #t~ret0 := fact(~n - 1); {35591#true} is VALID [2021-09-14 00:14:20,052 INFO L281 TraceCheckUtils]: 66: Hoare triple {35591#true} ~n := #in~n; {35591#true} is VALID [2021-09-14 00:14:20,052 INFO L281 TraceCheckUtils]: 67: Hoare triple {35591#true} assume ~n <= 0;#res := 1; {35799#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:20,053 INFO L281 TraceCheckUtils]: 68: Hoare triple {35799#(<= 1 |fact_#res|)} assume true; {35799#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:20,053 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {35799#(<= 1 |fact_#res|)} {35786#(and (<= fact_~n 2147483648) (< 0 fact_~n))} #109#return; {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} is VALID [2021-09-14 00:14:20,053 INFO L281 TraceCheckUtils]: 70: Hoare triple {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} is VALID [2021-09-14 00:14:20,054 INFO L281 TraceCheckUtils]: 71: Hoare triple {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} assume ~n * #t~ret0 <= 2147483647; {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} is VALID [2021-09-14 00:14:20,054 INFO L281 TraceCheckUtils]: 72: Hoare triple {35806#(and (<= 1 |fact_#t~ret0|) (<= fact_~n 2147483648) (< 0 fact_~n))} assume !(~n * #t~ret0 >= -2147483648); {35592#false} is VALID [2021-09-14 00:14:20,055 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 18 proven. 0 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2021-09-14 00:14:20,055 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:20,055 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:20,055 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [538342857] [2021-09-14 00:14:20,055 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:20,055 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1925269402] [2021-09-14 00:14:20,055 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1925269402] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:20,055 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:20,055 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2021-09-14 00:14:20,055 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [994682387] [2021-09-14 00:14:20,056 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 73 [2021-09-14 00:14:20,056 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:20,056 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:20,094 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:20,094 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2021-09-14 00:14:20,094 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:20,095 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2021-09-14 00:14:20,095 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2021-09-14 00:14:20,095 INFO L87 Difference]: Start difference. First operand 416 states and 536 transitions. Second operand has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:20,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:20,744 INFO L93 Difference]: Finished difference Result 418 states and 539 transitions. [2021-09-14 00:14:20,744 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2021-09-14 00:14:20,744 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 73 [2021-09-14 00:14:20,744 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:20,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:20,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 80 transitions. [2021-09-14 00:14:20,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:20,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 80 transitions. [2021-09-14 00:14:20,746 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 80 transitions. [2021-09-14 00:14:20,806 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:20,814 INFO L225 Difference]: With dead ends: 418 [2021-09-14 00:14:20,814 INFO L226 Difference]: Without dead ends: 417 [2021-09-14 00:14:20,814 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 68 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 22.55ms TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2021-09-14 00:14:20,814 INFO L928 BasicCegarLoop]: 19 mSDtfsCounter, 8 mSDsluCounter, 247 mSDsCounter, 0 mSdLazyCounter, 216 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 145.38ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 72 SdHoareTripleChecker+Invalid, 218 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.79ms SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 216 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 146.08ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:20,815 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 72 Invalid, 218 Unknown, 0 Unchecked, 0.79ms Time], IncrementalHoareTripleChecker [2 Valid, 216 Invalid, 0 Unknown, 0 Unchecked, 146.08ms Time] [2021-09-14 00:14:20,815 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 417 states. [2021-09-14 00:14:21,140 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 417 to 415. [2021-09-14 00:14:21,140 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:21,140 INFO L82 GeneralOperation]: Start isEquivalent. First operand 417 states. Second operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:21,141 INFO L74 IsIncluded]: Start isIncluded. First operand 417 states. Second operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:21,141 INFO L87 Difference]: Start difference. First operand 417 states. Second operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:21,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:21,174 INFO L93 Difference]: Finished difference Result 417 states and 530 transitions. [2021-09-14 00:14:21,174 INFO L276 IsEmpty]: Start isEmpty. Operand 417 states and 530 transitions. [2021-09-14 00:14:21,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:21,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:21,175 INFO L74 IsIncluded]: Start isIncluded. First operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) Second operand 417 states. [2021-09-14 00:14:21,175 INFO L87 Difference]: Start difference. First operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) Second operand 417 states. [2021-09-14 00:14:21,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:21,183 INFO L93 Difference]: Finished difference Result 417 states and 530 transitions. [2021-09-14 00:14:21,183 INFO L276 IsEmpty]: Start isEmpty. Operand 417 states and 530 transitions. [2021-09-14 00:14:21,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:21,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:21,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:21,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:21,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 415 states, 327 states have (on average 1.2262996941896025) internal successors, (401), 330 states have internal predecessors, (401), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 66 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:21,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 415 states to 415 states and 527 transitions. [2021-09-14 00:14:21,194 INFO L78 Accepts]: Start accepts. Automaton has 415 states and 527 transitions. Word has length 73 [2021-09-14 00:14:21,194 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:21,194 INFO L470 AbstractCegarLoop]: Abstraction has 415 states and 527 transitions. [2021-09-14 00:14:21,194 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 8.2) internal successors, (41), 6 states have internal predecessors, (41), 2 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:21,194 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 527 transitions. [2021-09-14 00:14:21,194 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2021-09-14 00:14:21,195 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:21,195 INFO L513 BasicCegarLoop]: trace histogram [8, 8, 6, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:21,213 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:21,411 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable25,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:21,411 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:21,412 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:21,412 INFO L82 PathProgramCache]: Analyzing trace with hash -1181156173, now seen corresponding path program 1 times [2021-09-14 00:14:21,412 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:21,412 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1937147960] [2021-09-14 00:14:21,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:21,412 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:21,416 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:21,416 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1454515369] [2021-09-14 00:14:21,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:21,417 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:21,417 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:21,417 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:21,421 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2021-09-14 00:14:21,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:21,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 6 conjunts are in the unsatisfiable core [2021-09-14 00:14:21,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:21,462 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 0: Hoare triple {37658#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 1: Hoare triple {37658#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 2: Hoare triple {37658#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 3: Hoare triple {37658#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 4: Hoare triple {37658#true} assume !!(main_~k~0 <= main_~x~0); {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 5: Hoare triple {37658#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L264 TraceCheckUtils]: 6: Hoare triple {37658#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {37658#true} is VALID [2021-09-14 00:14:21,677 INFO L281 TraceCheckUtils]: 7: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 8: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 9: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {37658#true} {37658#true} #111#return; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 11: Hoare triple {37658#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L264 TraceCheckUtils]: 12: Hoare triple {37658#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 13: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 14: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 15: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {37658#true} {37658#true} #113#return; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 17: Hoare triple {37658#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 18: Hoare triple {37658#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 19: Hoare triple {37658#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L264 TraceCheckUtils]: 20: Hoare triple {37658#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 21: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 22: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L281 TraceCheckUtils]: 23: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,678 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {37658#true} {37658#true} #115#return; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 25: Hoare triple {37658#true} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 26: Hoare triple {37658#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 27: Hoare triple {37658#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 28: Hoare triple {37658#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 29: Hoare triple {37658#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 30: Hoare triple {37658#true} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 31: Hoare triple {37658#true} main_#t~post8 := main_~k~0; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 32: Hoare triple {37658#true} assume 1 + main_#t~post8 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 33: Hoare triple {37658#true} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 34: Hoare triple {37658#true} assume !!(main_~k~0 <= main_~x~0); {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 35: Hoare triple {37658#true} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L264 TraceCheckUtils]: 36: Hoare triple {37658#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 37: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 38: Hoare triple {37658#true} assume !(~n <= 0); {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 39: Hoare triple {37658#true} assume ~n - 1 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,679 INFO L281 TraceCheckUtils]: 40: Hoare triple {37658#true} assume ~n - 1 >= -2147483648; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L264 TraceCheckUtils]: 41: Hoare triple {37658#true} call #t~ret0 := fact(~n - 1); {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 42: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 43: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 44: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {37658#true} {37658#true} #109#return; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 46: Hoare triple {37658#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 47: Hoare triple {37658#true} assume ~n * #t~ret0 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 48: Hoare triple {37658#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 49: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {37658#true} {37658#true} #117#return; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 51: Hoare triple {37658#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L264 TraceCheckUtils]: 52: Hoare triple {37658#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 53: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,680 INFO L281 TraceCheckUtils]: 54: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37825#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:21,681 INFO L281 TraceCheckUtils]: 55: Hoare triple {37825#(= |fact_#res| 1)} assume true; {37825#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:21,681 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {37825#(= |fact_#res| 1)} {37658#true} #119#return; {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:14:21,681 INFO L281 TraceCheckUtils]: 57: Hoare triple {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 58: Hoare triple {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 59: Hoare triple {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:14:21,682 INFO L264 TraceCheckUtils]: 60: Hoare triple {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 61: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 62: Hoare triple {37658#true} assume !(~n <= 0); {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 63: Hoare triple {37658#true} assume ~n - 1 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 64: Hoare triple {37658#true} assume ~n - 1 >= -2147483648; {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L264 TraceCheckUtils]: 65: Hoare triple {37658#true} call #t~ret0 := fact(~n - 1); {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 66: Hoare triple {37658#true} ~n := #in~n; {37658#true} is VALID [2021-09-14 00:14:21,682 INFO L281 TraceCheckUtils]: 67: Hoare triple {37658#true} assume ~n <= 0;#res := 1; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L281 TraceCheckUtils]: 68: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {37658#true} {37658#true} #109#return; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L281 TraceCheckUtils]: 70: Hoare triple {37658#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L281 TraceCheckUtils]: 71: Hoare triple {37658#true} assume ~n * #t~ret0 <= 2147483647; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L281 TraceCheckUtils]: 72: Hoare triple {37658#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L281 TraceCheckUtils]: 73: Hoare triple {37658#true} assume true; {37658#true} is VALID [2021-09-14 00:14:21,683 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {37658#true} {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} #121#return; {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} is VALID [2021-09-14 00:14:21,684 INFO L281 TraceCheckUtils]: 75: Hoare triple {37832#(= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {37890#(and (<= |ULTIMATE.start_binomialCoefficient_#t~ret3| 2147483647) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} is VALID [2021-09-14 00:14:21,684 INFO L281 TraceCheckUtils]: 76: Hoare triple {37890#(and (<= |ULTIMATE.start_binomialCoefficient_#t~ret3| 2147483647) (= |ULTIMATE.start_binomialCoefficient_#t~ret2| 1))} assume !(binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647); {37659#false} is VALID [2021-09-14 00:14:21,684 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 10 proven. 4 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2021-09-14 00:14:21,684 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:22,036 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:22,036 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1937147960] [2021-09-14 00:14:22,036 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:22,036 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1454515369] [2021-09-14 00:14:22,036 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1454515369] provided 0 perfect and 1 imperfect interpolant sequences [2021-09-14 00:14:22,036 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2021-09-14 00:14:22,036 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4] total 4 [2021-09-14 00:14:22,036 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [674113100] [2021-09-14 00:14:22,037 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 77 [2021-09-14 00:14:22,037 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:22,037 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:22,073 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:22,074 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2021-09-14 00:14:22,074 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:22,074 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2021-09-14 00:14:22,074 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2021-09-14 00:14:22,074 INFO L87 Difference]: Start difference. First operand 415 states and 527 transitions. Second operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:22,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:22,661 INFO L93 Difference]: Finished difference Result 447 states and 566 transitions. [2021-09-14 00:14:22,661 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2021-09-14 00:14:22,661 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 77 [2021-09-14 00:14:22,662 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:22,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:22,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 113 transitions. [2021-09-14 00:14:22,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:22,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 113 transitions. [2021-09-14 00:14:22,663 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 113 transitions. [2021-09-14 00:14:22,750 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:22,758 INFO L225 Difference]: With dead ends: 447 [2021-09-14 00:14:22,759 INFO L226 Difference]: Without dead ends: 445 [2021-09-14 00:14:22,759 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 74 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 89.64ms TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2021-09-14 00:14:22,759 INFO L928 BasicCegarLoop]: 18 mSDtfsCounter, 33 mSDsluCounter, 154 mSDsCounter, 0 mSdLazyCounter, 184 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 131.08ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.69ms SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 184 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 131.69ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:22,759 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 51 Invalid, 189 Unknown, 0 Unchecked, 0.69ms Time], IncrementalHoareTripleChecker [5 Valid, 184 Invalid, 0 Unknown, 0 Unchecked, 131.69ms Time] [2021-09-14 00:14:22,760 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 445 states. [2021-09-14 00:14:23,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 445 to 423. [2021-09-14 00:14:23,056 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:23,056 INFO L82 GeneralOperation]: Start isEquivalent. First operand 445 states. Second operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:23,057 INFO L74 IsIncluded]: Start isIncluded. First operand 445 states. Second operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:23,057 INFO L87 Difference]: Start difference. First operand 445 states. Second operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:23,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:23,065 INFO L93 Difference]: Finished difference Result 445 states and 558 transitions. [2021-09-14 00:14:23,065 INFO L276 IsEmpty]: Start isEmpty. Operand 445 states and 558 transitions. [2021-09-14 00:14:23,066 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:23,066 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:23,067 INFO L74 IsIncluded]: Start isIncluded. First operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) Second operand 445 states. [2021-09-14 00:14:23,067 INFO L87 Difference]: Start difference. First operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) Second operand 445 states. [2021-09-14 00:14:23,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:23,075 INFO L93 Difference]: Finished difference Result 445 states and 558 transitions. [2021-09-14 00:14:23,075 INFO L276 IsEmpty]: Start isEmpty. Operand 445 states and 558 transitions. [2021-09-14 00:14:23,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:23,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:23,076 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:23,076 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:23,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 423 states, 335 states have (on average 1.208955223880597) internal successors, (405), 334 states have internal predecessors, (405), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 70 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:23,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 423 states to 423 states and 531 transitions. [2021-09-14 00:14:23,085 INFO L78 Accepts]: Start accepts. Automaton has 423 states and 531 transitions. Word has length 77 [2021-09-14 00:14:23,085 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:23,085 INFO L470 AbstractCegarLoop]: Abstraction has 423 states and 531 transitions. [2021-09-14 00:14:23,085 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2021-09-14 00:14:23,085 INFO L276 IsEmpty]: Start isEmpty. Operand 423 states and 531 transitions. [2021-09-14 00:14:23,086 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2021-09-14 00:14:23,086 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:23,086 INFO L513 BasicCegarLoop]: trace histogram [8, 8, 6, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:23,106 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:23,300 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable26,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:23,301 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr9ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:23,301 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:23,301 INFO L82 PathProgramCache]: Analyzing trace with hash 2038864413, now seen corresponding path program 1 times [2021-09-14 00:14:23,301 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:23,301 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [900099270] [2021-09-14 00:14:23,301 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:23,301 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:23,304 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:23,305 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [487230259] [2021-09-14 00:14:23,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:23,305 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:23,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:23,306 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:23,307 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2021-09-14 00:14:23,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:23,337 INFO L263 TraceCheckSpWp]: Trace formula consists of 181 conjuncts, 9 conjunts are in the unsatisfiable core [2021-09-14 00:14:23,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:23,350 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:24,059 INFO L281 TraceCheckUtils]: 0: Hoare triple {39838#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {39838#true} is VALID [2021-09-14 00:14:24,059 INFO L281 TraceCheckUtils]: 1: Hoare triple {39838#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 2: Hoare triple {39838#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 3: Hoare triple {39838#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 4: Hoare triple {39838#true} assume !!(main_~k~0 <= main_~x~0); {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 5: Hoare triple {39838#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L264 TraceCheckUtils]: 6: Hoare triple {39838#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 7: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 8: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 9: Hoare triple {39838#true} assume true; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {39838#true} {39838#true} #111#return; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 11: Hoare triple {39838#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L264 TraceCheckUtils]: 12: Hoare triple {39838#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 13: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 14: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 15: Hoare triple {39838#true} assume true; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {39838#true} {39838#true} #113#return; {39838#true} is VALID [2021-09-14 00:14:24,060 INFO L281 TraceCheckUtils]: 17: Hoare triple {39838#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 18: Hoare triple {39838#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 19: Hoare triple {39838#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L264 TraceCheckUtils]: 20: Hoare triple {39838#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 21: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 22: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 23: Hoare triple {39838#true} assume true; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {39838#true} {39838#true} #115#return; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 25: Hoare triple {39838#true} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 26: Hoare triple {39838#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 27: Hoare triple {39838#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 28: Hoare triple {39838#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 29: Hoare triple {39838#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 30: Hoare triple {39838#true} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 31: Hoare triple {39838#true} main_#t~post8 := main_~k~0; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 32: Hoare triple {39838#true} assume 1 + main_#t~post8 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 33: Hoare triple {39838#true} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 34: Hoare triple {39838#true} assume !!(main_~k~0 <= main_~x~0); {39838#true} is VALID [2021-09-14 00:14:24,061 INFO L281 TraceCheckUtils]: 35: Hoare triple {39838#true} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L264 TraceCheckUtils]: 36: Hoare triple {39838#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 37: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 38: Hoare triple {39838#true} assume !(~n <= 0); {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 39: Hoare triple {39838#true} assume ~n - 1 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 40: Hoare triple {39838#true} assume ~n - 1 >= -2147483648; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L264 TraceCheckUtils]: 41: Hoare triple {39838#true} call #t~ret0 := fact(~n - 1); {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 42: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 43: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 44: Hoare triple {39838#true} assume true; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {39838#true} {39838#true} #109#return; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 46: Hoare triple {39838#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 47: Hoare triple {39838#true} assume ~n * #t~ret0 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 48: Hoare triple {39838#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 49: Hoare triple {39838#true} assume true; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {39838#true} {39838#true} #117#return; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L281 TraceCheckUtils]: 51: Hoare triple {39838#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {39838#true} is VALID [2021-09-14 00:14:24,062 INFO L264 TraceCheckUtils]: 52: Hoare triple {39838#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {39838#true} is VALID [2021-09-14 00:14:24,063 INFO L281 TraceCheckUtils]: 53: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,063 INFO L281 TraceCheckUtils]: 54: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,063 INFO L281 TraceCheckUtils]: 55: Hoare triple {40005#(<= 1 |fact_#res|)} assume true; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,064 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {40005#(<= 1 |fact_#res|)} {39838#true} #119#return; {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} is VALID [2021-09-14 00:14:24,064 INFO L281 TraceCheckUtils]: 57: Hoare triple {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} is VALID [2021-09-14 00:14:24,064 INFO L281 TraceCheckUtils]: 58: Hoare triple {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} is VALID [2021-09-14 00:14:24,064 INFO L281 TraceCheckUtils]: 59: Hoare triple {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} is VALID [2021-09-14 00:14:24,064 INFO L264 TraceCheckUtils]: 60: Hoare triple {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {39838#true} is VALID [2021-09-14 00:14:24,064 INFO L281 TraceCheckUtils]: 61: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,065 INFO L281 TraceCheckUtils]: 62: Hoare triple {39838#true} assume !(~n <= 0); {40031#(< 0 fact_~n)} is VALID [2021-09-14 00:14:24,065 INFO L281 TraceCheckUtils]: 63: Hoare triple {40031#(< 0 fact_~n)} assume ~n - 1 <= 2147483647; {40031#(< 0 fact_~n)} is VALID [2021-09-14 00:14:24,065 INFO L281 TraceCheckUtils]: 64: Hoare triple {40031#(< 0 fact_~n)} assume ~n - 1 >= -2147483648; {40031#(< 0 fact_~n)} is VALID [2021-09-14 00:14:24,065 INFO L264 TraceCheckUtils]: 65: Hoare triple {40031#(< 0 fact_~n)} call #t~ret0 := fact(~n - 1); {39838#true} is VALID [2021-09-14 00:14:24,065 INFO L281 TraceCheckUtils]: 66: Hoare triple {39838#true} ~n := #in~n; {39838#true} is VALID [2021-09-14 00:14:24,066 INFO L281 TraceCheckUtils]: 67: Hoare triple {39838#true} assume ~n <= 0;#res := 1; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,066 INFO L281 TraceCheckUtils]: 68: Hoare triple {40005#(<= 1 |fact_#res|)} assume true; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,066 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {40005#(<= 1 |fact_#res|)} {40031#(< 0 fact_~n)} #109#return; {40053#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:24,067 INFO L281 TraceCheckUtils]: 70: Hoare triple {40053#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {40057#(and (<= 1 |fact_#t~ret0|) (<= |fact_#t~ret0| 2147483647) (< 0 fact_~n))} is VALID [2021-09-14 00:14:24,067 INFO L281 TraceCheckUtils]: 71: Hoare triple {40057#(and (<= 1 |fact_#t~ret0|) (<= |fact_#t~ret0| 2147483647) (< 0 fact_~n))} assume ~n * #t~ret0 <= 2147483647; {40057#(and (<= 1 |fact_#t~ret0|) (<= |fact_#t~ret0| 2147483647) (< 0 fact_~n))} is VALID [2021-09-14 00:14:24,068 INFO L281 TraceCheckUtils]: 72: Hoare triple {40057#(and (<= 1 |fact_#t~ret0|) (<= |fact_#t~ret0| 2147483647) (< 0 fact_~n))} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,068 INFO L281 TraceCheckUtils]: 73: Hoare triple {40005#(<= 1 |fact_#res|)} assume true; {40005#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:24,069 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {40005#(<= 1 |fact_#res|)} {40012#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|)} #121#return; {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} is VALID [2021-09-14 00:14:24,069 INFO L281 TraceCheckUtils]: 75: Hoare triple {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} is VALID [2021-09-14 00:14:24,069 INFO L281 TraceCheckUtils]: 76: Hoare triple {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} is VALID [2021-09-14 00:14:24,070 INFO L281 TraceCheckUtils]: 77: Hoare triple {40070#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|))} assume !(binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648); {39839#false} is VALID [2021-09-14 00:14:24,070 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 36 proven. 0 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2021-09-14 00:14:24,070 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:24,070 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:24,070 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [900099270] [2021-09-14 00:14:24,070 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:24,070 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [487230259] [2021-09-14 00:14:24,071 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [487230259] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:24,071 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:24,071 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2021-09-14 00:14:24,071 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [161537835] [2021-09-14 00:14:24,071 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 78 [2021-09-14 00:14:24,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:24,071 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2021-09-14 00:14:24,113 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:24,113 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2021-09-14 00:14:24,113 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:24,113 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2021-09-14 00:14:24,113 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:14:24,113 INFO L87 Difference]: Start difference. First operand 423 states and 531 transitions. Second operand has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2021-09-14 00:14:24,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:24,829 INFO L93 Difference]: Finished difference Result 425 states and 534 transitions. [2021-09-14 00:14:24,829 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2021-09-14 00:14:24,829 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 78 [2021-09-14 00:14:24,829 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:24,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2021-09-14 00:14:24,830 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2021-09-14 00:14:24,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2021-09-14 00:14:24,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2021-09-14 00:14:24,831 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 79 transitions. [2021-09-14 00:14:24,894 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:24,902 INFO L225 Difference]: With dead ends: 425 [2021-09-14 00:14:24,902 INFO L226 Difference]: Without dead ends: 423 [2021-09-14 00:14:24,902 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 55.82ms TimeCoverageRelationStatistics Valid=21, Invalid=51, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:14:24,902 INFO L928 BasicCegarLoop]: 19 mSDtfsCounter, 28 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 243 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 171.24ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 247 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.03ms SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 243 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 172.14ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:24,903 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 79 Invalid, 247 Unknown, 0 Unchecked, 1.03ms Time], IncrementalHoareTripleChecker [4 Valid, 243 Invalid, 0 Unknown, 0 Unchecked, 172.14ms Time] [2021-09-14 00:14:24,903 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 423 states. [2021-09-14 00:14:25,218 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 423 to 403. [2021-09-14 00:14:25,219 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:25,219 INFO L82 GeneralOperation]: Start isEquivalent. First operand 423 states. Second operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:25,219 INFO L74 IsIncluded]: Start isIncluded. First operand 423 states. Second operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:25,220 INFO L87 Difference]: Start difference. First operand 423 states. Second operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:25,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:25,227 INFO L93 Difference]: Finished difference Result 423 states and 526 transitions. [2021-09-14 00:14:25,227 INFO L276 IsEmpty]: Start isEmpty. Operand 423 states and 526 transitions. [2021-09-14 00:14:25,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:25,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:25,228 INFO L74 IsIncluded]: Start isIncluded. First operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) Second operand 423 states. [2021-09-14 00:14:25,229 INFO L87 Difference]: Start difference. First operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) Second operand 423 states. [2021-09-14 00:14:25,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:25,236 INFO L93 Difference]: Finished difference Result 423 states and 526 transitions. [2021-09-14 00:14:25,236 INFO L276 IsEmpty]: Start isEmpty. Operand 423 states and 526 transitions. [2021-09-14 00:14:25,237 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:25,237 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:25,237 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:25,237 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:25,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 403 states, 317 states have (on average 1.195583596214511) internal successors, (379), 320 states have internal predecessors, (379), 50 states have call successors, (50), 18 states have call predecessors, (50), 24 states have return successors, (76), 64 states have call predecessors, (76), 50 states have call successors, (76) [2021-09-14 00:14:25,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 403 states to 403 states and 505 transitions. [2021-09-14 00:14:25,245 INFO L78 Accepts]: Start accepts. Automaton has 403 states and 505 transitions. Word has length 78 [2021-09-14 00:14:25,245 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:25,245 INFO L470 AbstractCegarLoop]: Abstraction has 403 states and 505 transitions. [2021-09-14 00:14:25,246 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 6.285714285714286) internal successors, (44), 7 states have internal predecessors, (44), 3 states have call successors, (8), 1 states have call predecessors, (8), 2 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2021-09-14 00:14:25,246 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 505 transitions. [2021-09-14 00:14:25,246 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2021-09-14 00:14:25,246 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:25,246 INFO L513 BasicCegarLoop]: trace histogram [8, 8, 6, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:25,264 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:25,456 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2021-09-14 00:14:25,456 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr10ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:25,456 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:25,457 INFO L82 PathProgramCache]: Analyzing trace with hash -1219712523, now seen corresponding path program 2 times [2021-09-14 00:14:25,457 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:25,457 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2136385073] [2021-09-14 00:14:25,457 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:25,457 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:25,460 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:25,461 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [238088006] [2021-09-14 00:14:25,461 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2021-09-14 00:14:25,461 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:25,461 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:25,462 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:25,499 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2021-09-14 00:14:25,509 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2021-09-14 00:14:25,509 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2021-09-14 00:14:25,510 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 14 conjunts are in the unsatisfiable core [2021-09-14 00:14:25,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:25,521 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 0: Hoare triple {41929#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 1: Hoare triple {41929#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 2: Hoare triple {41929#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 3: Hoare triple {41929#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 4: Hoare triple {41929#true} assume !!(main_~k~0 <= main_~x~0); {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 5: Hoare triple {41929#true} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L264 TraceCheckUtils]: 6: Hoare triple {41929#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {41929#true} is VALID [2021-09-14 00:14:26,657 INFO L281 TraceCheckUtils]: 7: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 8: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 9: Hoare triple {41929#true} assume true; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {41929#true} {41929#true} #111#return; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 11: Hoare triple {41929#true} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L264 TraceCheckUtils]: 12: Hoare triple {41929#true} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 13: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 14: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 15: Hoare triple {41929#true} assume true; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {41929#true} {41929#true} #113#return; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 17: Hoare triple {41929#true} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 18: Hoare triple {41929#true} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 19: Hoare triple {41929#true} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L264 TraceCheckUtils]: 20: Hoare triple {41929#true} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 21: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 22: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L281 TraceCheckUtils]: 23: Hoare triple {41929#true} assume true; {41929#true} is VALID [2021-09-14 00:14:26,658 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {41929#true} {41929#true} #115#return; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 25: Hoare triple {41929#true} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 26: Hoare triple {41929#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 27: Hoare triple {41929#true} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 28: Hoare triple {41929#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 29: Hoare triple {41929#true} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 30: Hoare triple {41929#true} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 31: Hoare triple {41929#true} main_#t~post8 := main_~k~0; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 32: Hoare triple {41929#true} assume 1 + main_#t~post8 <= 2147483647; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 33: Hoare triple {41929#true} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 34: Hoare triple {41929#true} assume !!(main_~k~0 <= main_~x~0); {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 35: Hoare triple {41929#true} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L264 TraceCheckUtils]: 36: Hoare triple {41929#true} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 37: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,659 INFO L281 TraceCheckUtils]: 38: Hoare triple {41929#true} assume !(~n <= 0); {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,660 INFO L281 TraceCheckUtils]: 39: Hoare triple {42048#(< 0 fact_~n)} assume ~n - 1 <= 2147483647; {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,660 INFO L281 TraceCheckUtils]: 40: Hoare triple {42048#(< 0 fact_~n)} assume ~n - 1 >= -2147483648; {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,660 INFO L264 TraceCheckUtils]: 41: Hoare triple {42048#(< 0 fact_~n)} call #t~ret0 := fact(~n - 1); {41929#true} is VALID [2021-09-14 00:14:26,660 INFO L281 TraceCheckUtils]: 42: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,660 INFO L281 TraceCheckUtils]: 43: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,661 INFO L281 TraceCheckUtils]: 44: Hoare triple {42064#(<= 1 |fact_#res|)} assume true; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,661 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {42064#(<= 1 |fact_#res|)} {42048#(< 0 fact_~n)} #109#return; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,661 INFO L281 TraceCheckUtils]: 46: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,662 INFO L281 TraceCheckUtils]: 47: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume ~n * #t~ret0 <= 2147483647; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,663 INFO L281 TraceCheckUtils]: 48: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,663 INFO L281 TraceCheckUtils]: 49: Hoare triple {42064#(<= 1 |fact_#res|)} assume true; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,663 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {42064#(<= 1 |fact_#res|)} {41929#true} #117#return; {42087#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|)} is VALID [2021-09-14 00:14:26,664 INFO L281 TraceCheckUtils]: 51: Hoare triple {42087#(<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {42091#(and (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,664 INFO L264 TraceCheckUtils]: 52: Hoare triple {42091#(and (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {41929#true} is VALID [2021-09-14 00:14:26,664 INFO L281 TraceCheckUtils]: 53: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,664 INFO L281 TraceCheckUtils]: 54: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,664 INFO L281 TraceCheckUtils]: 55: Hoare triple {42064#(<= 1 |fact_#res|)} assume true; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,665 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {42064#(<= 1 |fact_#res|)} {42091#(and (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} #119#return; {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,665 INFO L281 TraceCheckUtils]: 57: Hoare triple {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,665 INFO L281 TraceCheckUtils]: 58: Hoare triple {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,666 INFO L281 TraceCheckUtils]: 59: Hoare triple {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,666 INFO L264 TraceCheckUtils]: 60: Hoare triple {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {41929#true} is VALID [2021-09-14 00:14:26,666 INFO L281 TraceCheckUtils]: 61: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,666 INFO L281 TraceCheckUtils]: 62: Hoare triple {41929#true} assume !(~n <= 0); {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,666 INFO L281 TraceCheckUtils]: 63: Hoare triple {42048#(< 0 fact_~n)} assume ~n - 1 <= 2147483647; {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,667 INFO L281 TraceCheckUtils]: 64: Hoare triple {42048#(< 0 fact_~n)} assume ~n - 1 >= -2147483648; {42048#(< 0 fact_~n)} is VALID [2021-09-14 00:14:26,667 INFO L264 TraceCheckUtils]: 65: Hoare triple {42048#(< 0 fact_~n)} call #t~ret0 := fact(~n - 1); {41929#true} is VALID [2021-09-14 00:14:26,667 INFO L281 TraceCheckUtils]: 66: Hoare triple {41929#true} ~n := #in~n; {41929#true} is VALID [2021-09-14 00:14:26,667 INFO L281 TraceCheckUtils]: 67: Hoare triple {41929#true} assume ~n <= 0;#res := 1; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,667 INFO L281 TraceCheckUtils]: 68: Hoare triple {42064#(<= 1 |fact_#res|)} assume true; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,668 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {42064#(<= 1 |fact_#res|)} {42048#(< 0 fact_~n)} #109#return; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,668 INFO L281 TraceCheckUtils]: 70: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,668 INFO L281 TraceCheckUtils]: 71: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume ~n * #t~ret0 <= 2147483647; {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} is VALID [2021-09-14 00:14:26,669 INFO L281 TraceCheckUtils]: 72: Hoare triple {42071#(and (<= 1 |fact_#t~ret0|) (< 0 fact_~n))} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,669 INFO L281 TraceCheckUtils]: 73: Hoare triple {42064#(<= 1 |fact_#res|)} assume true; {42064#(<= 1 |fact_#res|)} is VALID [2021-09-14 00:14:26,670 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {42064#(<= 1 |fact_#res|)} {42107#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} #121#return; {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,670 INFO L281 TraceCheckUtils]: 75: Hoare triple {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,671 INFO L281 TraceCheckUtils]: 76: Hoare triple {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,671 INFO L281 TraceCheckUtils]: 77: Hoare triple {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} is VALID [2021-09-14 00:14:26,674 INFO L281 TraceCheckUtils]: 78: Hoare triple {42162#(and (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret3|) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret2|) (<= |ULTIMATE.start_binomialCoefficient_#t~ret1| 2147483647) (<= 1 |ULTIMATE.start_binomialCoefficient_#t~ret1|))} assume !((if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647); {41930#false} is VALID [2021-09-14 00:14:26,675 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 90 trivial. 0 not checked. [2021-09-14 00:14:26,675 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:26,675 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:26,675 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2136385073] [2021-09-14 00:14:26,675 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:26,675 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [238088006] [2021-09-14 00:14:26,675 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [238088006] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:26,675 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:26,675 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2021-09-14 00:14:26,675 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1341191892] [2021-09-14 00:14:26,676 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 79 [2021-09-14 00:14:26,676 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:26,676 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2021-09-14 00:14:26,721 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:26,721 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2021-09-14 00:14:26,721 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:26,721 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2021-09-14 00:14:26,722 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2021-09-14 00:14:26,722 INFO L87 Difference]: Start difference. First operand 403 states and 505 transitions. Second operand has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2021-09-14 00:14:27,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:27,457 INFO L93 Difference]: Finished difference Result 405 states and 508 transitions. [2021-09-14 00:14:27,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2021-09-14 00:14:27,457 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) Word has length 79 [2021-09-14 00:14:27,458 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:27,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2021-09-14 00:14:27,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2021-09-14 00:14:27,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2021-09-14 00:14:27,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2021-09-14 00:14:27,460 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2021-09-14 00:14:27,533 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:27,541 INFO L225 Difference]: With dead ends: 405 [2021-09-14 00:14:27,541 INFO L226 Difference]: Without dead ends: 401 [2021-09-14 00:14:27,541 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 85.16ms TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2021-09-14 00:14:27,541 INFO L928 BasicCegarLoop]: 19 mSDtfsCounter, 46 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 273 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 178.35ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 284 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.08ms SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 273 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 179.35ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:27,542 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 90 Invalid, 284 Unknown, 0 Unchecked, 1.08ms Time], IncrementalHoareTripleChecker [11 Valid, 273 Invalid, 0 Unknown, 0 Unchecked, 179.35ms Time] [2021-09-14 00:14:27,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 401 states. [2021-09-14 00:14:27,850 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 401 to 375. [2021-09-14 00:14:27,850 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:27,850 INFO L82 GeneralOperation]: Start isEquivalent. First operand 401 states. Second operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) [2021-09-14 00:14:27,850 INFO L74 IsIncluded]: Start isIncluded. First operand 401 states. Second operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) [2021-09-14 00:14:27,851 INFO L87 Difference]: Start difference. First operand 401 states. Second operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) [2021-09-14 00:14:27,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:27,861 INFO L93 Difference]: Finished difference Result 401 states and 492 transitions. [2021-09-14 00:14:27,862 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 492 transitions. [2021-09-14 00:14:27,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:27,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:27,863 INFO L74 IsIncluded]: Start isIncluded. First operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) Second operand 401 states. [2021-09-14 00:14:27,863 INFO L87 Difference]: Start difference. First operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) Second operand 401 states. [2021-09-14 00:14:27,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:27,873 INFO L93 Difference]: Finished difference Result 401 states and 492 transitions. [2021-09-14 00:14:27,873 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 492 transitions. [2021-09-14 00:14:27,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:27,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:27,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:27,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:27,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 375 states, 298 states have (on average 1.1476510067114094) internal successors, (342), 298 states have internal predecessors, (342), 46 states have call successors, (46), 18 states have call predecessors, (46), 23 states have return successors, (69), 58 states have call predecessors, (69), 46 states have call successors, (69) [2021-09-14 00:14:27,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 375 states to 375 states and 457 transitions. [2021-09-14 00:14:27,881 INFO L78 Accepts]: Start accepts. Automaton has 375 states and 457 transitions. Word has length 79 [2021-09-14 00:14:27,882 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:27,882 INFO L470 AbstractCegarLoop]: Abstraction has 375 states and 457 transitions. [2021-09-14 00:14:27,882 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 7 states have (on average 5.571428571428571) internal successors, (39), 8 states have internal predecessors, (39), 4 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 5 states have call predecessors, (7), 4 states have call successors, (7) [2021-09-14 00:14:27,882 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 457 transitions. [2021-09-14 00:14:27,882 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2021-09-14 00:14:27,883 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:27,883 INFO L513 BasicCegarLoop]: trace histogram [9, 8, 6, 3, 3, 3, 3, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:27,902 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Ended with exit code 0 [2021-09-14 00:14:28,096 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2021-09-14 00:14:28,097 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:28,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:28,097 INFO L82 PathProgramCache]: Analyzing trace with hash 643431079, now seen corresponding path program 2 times [2021-09-14 00:14:28,097 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:28,097 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [437432530] [2021-09-14 00:14:28,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:28,097 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:28,101 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:28,101 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [965029134] [2021-09-14 00:14:28,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2021-09-14 00:14:28,101 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:28,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:28,102 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:28,103 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2021-09-14 00:14:28,135 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2021-09-14 00:14:28,135 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2021-09-14 00:14:28,136 INFO L263 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 13 conjunts are in the unsatisfiable core [2021-09-14 00:14:28,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:28,148 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:28,694 INFO L281 TraceCheckUtils]: 0: Hoare triple {43929#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {43929#true} is VALID [2021-09-14 00:14:28,694 INFO L281 TraceCheckUtils]: 1: Hoare triple {43929#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {43929#true} is VALID [2021-09-14 00:14:28,694 INFO L281 TraceCheckUtils]: 2: Hoare triple {43929#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {43940#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:28,695 INFO L281 TraceCheckUtils]: 3: Hoare triple {43940#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,695 INFO L281 TraceCheckUtils]: 4: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,696 INFO L281 TraceCheckUtils]: 5: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,696 INFO L264 TraceCheckUtils]: 6: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {43929#true} is VALID [2021-09-14 00:14:28,696 INFO L281 TraceCheckUtils]: 7: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,696 INFO L281 TraceCheckUtils]: 8: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,696 INFO L281 TraceCheckUtils]: 9: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,696 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {43929#true} {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #111#return; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,697 INFO L281 TraceCheckUtils]: 11: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,697 INFO L264 TraceCheckUtils]: 12: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:28,697 INFO L281 TraceCheckUtils]: 13: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,697 INFO L281 TraceCheckUtils]: 14: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,697 INFO L281 TraceCheckUtils]: 15: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,697 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {43929#true} {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #113#return; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 17: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 18: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 19: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,698 INFO L264 TraceCheckUtils]: 20: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 21: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 22: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,698 INFO L281 TraceCheckUtils]: 23: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,699 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {43929#true} {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} #115#return; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,699 INFO L281 TraceCheckUtils]: 25: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,700 INFO L281 TraceCheckUtils]: 26: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,700 INFO L281 TraceCheckUtils]: 27: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,700 INFO L281 TraceCheckUtils]: 28: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,701 INFO L281 TraceCheckUtils]: 29: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,701 INFO L281 TraceCheckUtils]: 30: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,701 INFO L281 TraceCheckUtils]: 31: Hoare triple {43944#(and (<= ULTIMATE.start_main_~k~0 0) (<= 0 ULTIMATE.start_main_~n~0))} main_#t~post8 := main_~k~0; {44029#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,702 INFO L281 TraceCheckUtils]: 32: Hoare triple {44029#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 <= 2147483647; {44029#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,704 INFO L281 TraceCheckUtils]: 33: Hoare triple {44029#(and (<= |ULTIMATE.start_main_#t~post8| 0) (<= 0 ULTIMATE.start_main_~n~0))} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {44036#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,704 INFO L281 TraceCheckUtils]: 34: Hoare triple {44036#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {44036#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:28,704 INFO L281 TraceCheckUtils]: 35: Hoare triple {44036#(and (<= ULTIMATE.start_main_~k~0 1) (<= 0 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,704 INFO L264 TraceCheckUtils]: 36: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {43929#true} is VALID [2021-09-14 00:14:28,704 INFO L281 TraceCheckUtils]: 37: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 38: Hoare triple {43929#true} assume !(~n <= 0); {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 39: Hoare triple {43929#true} assume ~n - 1 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 40: Hoare triple {43929#true} assume ~n - 1 >= -2147483648; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L264 TraceCheckUtils]: 41: Hoare triple {43929#true} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 42: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 43: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 44: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {43929#true} {43929#true} #109#return; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 46: Hoare triple {43929#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 47: Hoare triple {43929#true} assume ~n * #t~ret0 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 48: Hoare triple {43929#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {43929#true} is VALID [2021-09-14 00:14:28,705 INFO L281 TraceCheckUtils]: 49: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,706 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {43929#true} {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #117#return; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,706 INFO L281 TraceCheckUtils]: 51: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,706 INFO L264 TraceCheckUtils]: 52: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:28,706 INFO L281 TraceCheckUtils]: 53: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,706 INFO L281 TraceCheckUtils]: 54: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,706 INFO L281 TraceCheckUtils]: 55: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,707 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {43929#true} {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} #119#return; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,707 INFO L281 TraceCheckUtils]: 57: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,707 INFO L281 TraceCheckUtils]: 58: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,708 INFO L281 TraceCheckUtils]: 59: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} is VALID [2021-09-14 00:14:28,709 INFO L264 TraceCheckUtils]: 60: Hoare triple {44043#(and (<= ULTIMATE.start_binomialCoefficient_~n 1) (<= 0 ULTIMATE.start_binomialCoefficient_~k))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {44119#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:28,709 INFO L281 TraceCheckUtils]: 61: Hoare triple {44119#(<= |fact_#in~n| 1)} ~n := #in~n; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:28,710 INFO L281 TraceCheckUtils]: 62: Hoare triple {44123#(<= fact_~n 1)} assume !(~n <= 0); {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:28,710 INFO L281 TraceCheckUtils]: 63: Hoare triple {44123#(<= fact_~n 1)} assume ~n - 1 <= 2147483647; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:28,710 INFO L281 TraceCheckUtils]: 64: Hoare triple {44123#(<= fact_~n 1)} assume ~n - 1 >= -2147483648; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:28,710 INFO L264 TraceCheckUtils]: 65: Hoare triple {44123#(<= fact_~n 1)} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:28,711 INFO L281 TraceCheckUtils]: 66: Hoare triple {43929#true} ~n := #in~n; {44139#(<= fact_~n |fact_#in~n|)} is VALID [2021-09-14 00:14:28,711 INFO L281 TraceCheckUtils]: 67: Hoare triple {44139#(<= fact_~n |fact_#in~n|)} assume !(~n <= 0); {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,712 INFO L281 TraceCheckUtils]: 68: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n - 1 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,712 INFO L281 TraceCheckUtils]: 69: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n - 1 >= -2147483648; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,712 INFO L264 TraceCheckUtils]: 70: Hoare triple {44143#(< 0 |fact_#in~n|)} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:28,712 INFO L281 TraceCheckUtils]: 71: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:28,712 INFO L281 TraceCheckUtils]: 72: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:28,712 INFO L281 TraceCheckUtils]: 73: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:28,713 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {43929#true} {44143#(< 0 |fact_#in~n|)} #109#return; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,713 INFO L281 TraceCheckUtils]: 75: Hoare triple {44143#(< 0 |fact_#in~n|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,713 INFO L281 TraceCheckUtils]: 76: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n * #t~ret0 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,713 INFO L281 TraceCheckUtils]: 77: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,714 INFO L281 TraceCheckUtils]: 78: Hoare triple {44143#(< 0 |fact_#in~n|)} assume true; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:28,715 INFO L276 TraceCheckUtils]: 79: Hoare quadruple {44143#(< 0 |fact_#in~n|)} {44123#(<= fact_~n 1)} #109#return; {43930#false} is VALID [2021-09-14 00:14:28,715 INFO L281 TraceCheckUtils]: 80: Hoare triple {43930#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {43930#false} is VALID [2021-09-14 00:14:28,715 INFO L281 TraceCheckUtils]: 81: Hoare triple {43930#false} assume !(~n * #t~ret0 <= 2147483647); {43930#false} is VALID [2021-09-14 00:14:28,715 INFO L134 CoverageAnalysis]: Checked inductivity of 146 backedges. 45 proven. 10 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2021-09-14 00:14:28,715 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:29,289 INFO L281 TraceCheckUtils]: 81: Hoare triple {43930#false} assume !(~n * #t~ret0 <= 2147483647); {43930#false} is VALID [2021-09-14 00:14:29,289 INFO L281 TraceCheckUtils]: 80: Hoare triple {43930#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {43930#false} is VALID [2021-09-14 00:14:29,290 INFO L276 TraceCheckUtils]: 79: Hoare quadruple {44143#(< 0 |fact_#in~n|)} {44123#(<= fact_~n 1)} #109#return; {43930#false} is VALID [2021-09-14 00:14:29,290 INFO L281 TraceCheckUtils]: 78: Hoare triple {44143#(< 0 |fact_#in~n|)} assume true; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,290 INFO L281 TraceCheckUtils]: 77: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,291 INFO L281 TraceCheckUtils]: 76: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n * #t~ret0 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,291 INFO L281 TraceCheckUtils]: 75: Hoare triple {44143#(< 0 |fact_#in~n|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,291 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {43929#true} {44143#(< 0 |fact_#in~n|)} #109#return; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,291 INFO L281 TraceCheckUtils]: 73: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,291 INFO L281 TraceCheckUtils]: 72: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,292 INFO L281 TraceCheckUtils]: 71: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,292 INFO L264 TraceCheckUtils]: 70: Hoare triple {44143#(< 0 |fact_#in~n|)} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:29,292 INFO L281 TraceCheckUtils]: 69: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n - 1 >= -2147483648; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,292 INFO L281 TraceCheckUtils]: 68: Hoare triple {44143#(< 0 |fact_#in~n|)} assume ~n - 1 <= 2147483647; {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,292 INFO L281 TraceCheckUtils]: 67: Hoare triple {44231#(or (< 0 |fact_#in~n|) (<= fact_~n 0))} assume !(~n <= 0); {44143#(< 0 |fact_#in~n|)} is VALID [2021-09-14 00:14:29,293 INFO L281 TraceCheckUtils]: 66: Hoare triple {43929#true} ~n := #in~n; {44231#(or (< 0 |fact_#in~n|) (<= fact_~n 0))} is VALID [2021-09-14 00:14:29,293 INFO L264 TraceCheckUtils]: 65: Hoare triple {44123#(<= fact_~n 1)} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:29,293 INFO L281 TraceCheckUtils]: 64: Hoare triple {44123#(<= fact_~n 1)} assume ~n - 1 >= -2147483648; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:29,293 INFO L281 TraceCheckUtils]: 63: Hoare triple {44123#(<= fact_~n 1)} assume ~n - 1 <= 2147483647; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:29,293 INFO L281 TraceCheckUtils]: 62: Hoare triple {44123#(<= fact_~n 1)} assume !(~n <= 0); {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:29,294 INFO L281 TraceCheckUtils]: 61: Hoare triple {44119#(<= |fact_#in~n| 1)} ~n := #in~n; {44123#(<= fact_~n 1)} is VALID [2021-09-14 00:14:29,295 INFO L264 TraceCheckUtils]: 60: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {44119#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:29,295 INFO L281 TraceCheckUtils]: 59: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,295 INFO L281 TraceCheckUtils]: 58: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,295 INFO L281 TraceCheckUtils]: 57: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,296 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {43929#true} {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} #119#return; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,296 INFO L281 TraceCheckUtils]: 55: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,296 INFO L281 TraceCheckUtils]: 54: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,296 INFO L281 TraceCheckUtils]: 53: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,296 INFO L264 TraceCheckUtils]: 52: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:29,296 INFO L281 TraceCheckUtils]: 51: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,297 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {43929#true} {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} #117#return; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 49: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 48: Hoare triple {43929#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 47: Hoare triple {43929#true} assume ~n * #t~ret0 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 46: Hoare triple {43929#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {43929#true} {43929#true} #109#return; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 44: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 43: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 42: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L264 TraceCheckUtils]: 41: Hoare triple {43929#true} call #t~ret0 := fact(~n - 1); {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 40: Hoare triple {43929#true} assume ~n - 1 >= -2147483648; {43929#true} is VALID [2021-09-14 00:14:29,297 INFO L281 TraceCheckUtils]: 39: Hoare triple {43929#true} assume ~n - 1 <= 2147483647; {43929#true} is VALID [2021-09-14 00:14:29,298 INFO L281 TraceCheckUtils]: 38: Hoare triple {43929#true} assume !(~n <= 0); {43929#true} is VALID [2021-09-14 00:14:29,298 INFO L281 TraceCheckUtils]: 37: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,298 INFO L264 TraceCheckUtils]: 36: Hoare triple {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {43929#true} is VALID [2021-09-14 00:14:29,298 INFO L281 TraceCheckUtils]: 35: Hoare triple {44326#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {44250#(<= ULTIMATE.start_binomialCoefficient_~n (+ ULTIMATE.start_binomialCoefficient_~k 1))} is VALID [2021-09-14 00:14:29,298 INFO L281 TraceCheckUtils]: 34: Hoare triple {44326#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} assume !!(main_~k~0 <= main_~x~0); {44326#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} is VALID [2021-09-14 00:14:29,300 INFO L281 TraceCheckUtils]: 33: Hoare triple {44333#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {44326#(<= ULTIMATE.start_main_~k~0 (+ ULTIMATE.start_main_~n~0 1))} is VALID [2021-09-14 00:14:29,300 INFO L281 TraceCheckUtils]: 32: Hoare triple {44333#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 <= 2147483647; {44333#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,300 INFO L281 TraceCheckUtils]: 31: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} main_#t~post8 := main_~k~0; {44333#(<= |ULTIMATE.start_main_#t~post8| ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,300 INFO L281 TraceCheckUtils]: 30: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,301 INFO L281 TraceCheckUtils]: 29: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,301 INFO L281 TraceCheckUtils]: 28: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,301 INFO L281 TraceCheckUtils]: 27: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,301 INFO L281 TraceCheckUtils]: 26: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,302 INFO L281 TraceCheckUtils]: 25: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,302 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {43929#true} {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #115#return; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,302 INFO L281 TraceCheckUtils]: 23: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,302 INFO L281 TraceCheckUtils]: 22: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,302 INFO L281 TraceCheckUtils]: 21: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,302 INFO L264 TraceCheckUtils]: 20: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:29,303 INFO L281 TraceCheckUtils]: 19: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,303 INFO L281 TraceCheckUtils]: 18: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,303 INFO L281 TraceCheckUtils]: 17: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,303 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {43929#true} {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #113#return; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,304 INFO L281 TraceCheckUtils]: 15: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,304 INFO L281 TraceCheckUtils]: 14: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,304 INFO L281 TraceCheckUtils]: 13: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,304 INFO L264 TraceCheckUtils]: 12: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {43929#true} is VALID [2021-09-14 00:14:29,304 INFO L281 TraceCheckUtils]: 11: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,304 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {43929#true} {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} #111#return; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,304 INFO L281 TraceCheckUtils]: 9: Hoare triple {43929#true} assume true; {43929#true} is VALID [2021-09-14 00:14:29,305 INFO L281 TraceCheckUtils]: 8: Hoare triple {43929#true} assume ~n <= 0;#res := 1; {43929#true} is VALID [2021-09-14 00:14:29,305 INFO L281 TraceCheckUtils]: 7: Hoare triple {43929#true} ~n := #in~n; {43929#true} is VALID [2021-09-14 00:14:29,305 INFO L264 TraceCheckUtils]: 6: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {43929#true} is VALID [2021-09-14 00:14:29,305 INFO L281 TraceCheckUtils]: 5: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,305 INFO L281 TraceCheckUtils]: 4: Hoare triple {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,305 INFO L281 TraceCheckUtils]: 3: Hoare triple {43940#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {44340#(<= ULTIMATE.start_main_~k~0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,306 INFO L281 TraceCheckUtils]: 2: Hoare triple {43929#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {43940#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:29,306 INFO L281 TraceCheckUtils]: 1: Hoare triple {43929#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {43929#true} is VALID [2021-09-14 00:14:29,306 INFO L281 TraceCheckUtils]: 0: Hoare triple {43929#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {43929#true} is VALID [2021-09-14 00:14:29,306 INFO L134 CoverageAnalysis]: Checked inductivity of 146 backedges. 45 proven. 10 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2021-09-14 00:14:29,306 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:29,307 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [437432530] [2021-09-14 00:14:29,307 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:29,307 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [965029134] [2021-09-14 00:14:29,307 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [965029134] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:29,307 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:29,307 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2021-09-14 00:14:29,307 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1837458651] [2021-09-14 00:14:29,308 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) Word has length 82 [2021-09-14 00:14:29,308 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:29,308 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:29,395 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:29,396 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2021-09-14 00:14:29,396 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:29,396 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2021-09-14 00:14:29,396 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=199, Unknown=0, NotChecked=0, Total=240 [2021-09-14 00:14:29,396 INFO L87 Difference]: Start difference. First operand 375 states and 457 transitions. Second operand has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:32,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:32,328 INFO L93 Difference]: Finished difference Result 754 states and 933 transitions. [2021-09-14 00:14:32,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2021-09-14 00:14:32,328 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) Word has length 82 [2021-09-14 00:14:32,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:32,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:32,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 272 transitions. [2021-09-14 00:14:32,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:32,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 272 transitions. [2021-09-14 00:14:32,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 272 transitions. [2021-09-14 00:14:32,582 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 272 edges. 272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:32,591 INFO L225 Difference]: With dead ends: 754 [2021-09-14 00:14:32,591 INFO L226 Difference]: Without dead ends: 436 [2021-09-14 00:14:32,592 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 149 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 112 ImplicationChecksByTransitivity, 266.93ms TimeCoverageRelationStatistics Valid=109, Invalid=541, Unknown=0, NotChecked=0, Total=650 [2021-09-14 00:14:32,592 INFO L928 BasicCegarLoop]: 7 mSDtfsCounter, 156 mSDsluCounter, 567 mSDsCounter, 0 mSdLazyCounter, 1150 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1032.01ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 159 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 1182 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 3.63ms SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 1150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1036.96ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:32,592 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [159 Valid, 55 Invalid, 1182 Unknown, 0 Unchecked, 3.63ms Time], IncrementalHoareTripleChecker [32 Valid, 1150 Invalid, 0 Unknown, 0 Unchecked, 1036.96ms Time] [2021-09-14 00:14:32,593 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 436 states. [2021-09-14 00:14:32,938 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 436 to 385. [2021-09-14 00:14:32,938 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:32,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 436 states. Second operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) [2021-09-14 00:14:32,938 INFO L74 IsIncluded]: Start isIncluded. First operand 436 states. Second operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) [2021-09-14 00:14:32,939 INFO L87 Difference]: Start difference. First operand 436 states. Second operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) [2021-09-14 00:14:32,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:32,947 INFO L93 Difference]: Finished difference Result 436 states and 524 transitions. [2021-09-14 00:14:32,947 INFO L276 IsEmpty]: Start isEmpty. Operand 436 states and 524 transitions. [2021-09-14 00:14:32,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:32,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:32,948 INFO L74 IsIncluded]: Start isIncluded. First operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) Second operand 436 states. [2021-09-14 00:14:32,948 INFO L87 Difference]: Start difference. First operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) Second operand 436 states. [2021-09-14 00:14:32,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:32,956 INFO L93 Difference]: Finished difference Result 436 states and 524 transitions. [2021-09-14 00:14:32,956 INFO L276 IsEmpty]: Start isEmpty. Operand 436 states and 524 transitions. [2021-09-14 00:14:32,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:32,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:32,957 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:32,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:32,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 385 states, 303 states have (on average 1.1386138613861385) internal successors, (345), 308 states have internal predecessors, (345), 50 states have call successors, (50), 20 states have call predecessors, (50), 24 states have return successors, (71), 56 states have call predecessors, (71), 50 states have call successors, (71) [2021-09-14 00:14:32,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 385 states to 385 states and 466 transitions. [2021-09-14 00:14:32,965 INFO L78 Accepts]: Start accepts. Automaton has 385 states and 466 transitions. Word has length 82 [2021-09-14 00:14:32,965 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:32,966 INFO L470 AbstractCegarLoop]: Abstraction has 385 states and 466 transitions. [2021-09-14 00:14:32,966 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 4.5) internal successors, (72), 15 states have internal predecessors, (72), 7 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 7 states have call predecessors, (13), 7 states have call successors, (13) [2021-09-14 00:14:32,966 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 466 transitions. [2021-09-14 00:14:32,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 96 [2021-09-14 00:14:32,966 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:32,967 INFO L513 BasicCegarLoop]: trace histogram [9, 8, 6, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:32,986 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:33,184 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:33,185 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:33,185 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:33,185 INFO L82 PathProgramCache]: Analyzing trace with hash 361947514, now seen corresponding path program 1 times [2021-09-14 00:14:33,185 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:33,185 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1031375154] [2021-09-14 00:14:33,185 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:33,185 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:33,189 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:33,189 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1530001960] [2021-09-14 00:14:33,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:33,189 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:33,189 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:33,190 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:33,190 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2021-09-14 00:14:33,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:33,224 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 8 conjunts are in the unsatisfiable core [2021-09-14 00:14:33,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:33,238 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:33,624 INFO L281 TraceCheckUtils]: 0: Hoare triple {46716#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {46716#true} is VALID [2021-09-14 00:14:33,624 INFO L281 TraceCheckUtils]: 1: Hoare triple {46716#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {46716#true} is VALID [2021-09-14 00:14:33,624 INFO L281 TraceCheckUtils]: 2: Hoare triple {46716#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,625 INFO L281 TraceCheckUtils]: 3: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,625 INFO L281 TraceCheckUtils]: 4: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,625 INFO L281 TraceCheckUtils]: 5: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,625 INFO L264 TraceCheckUtils]: 6: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {46716#true} is VALID [2021-09-14 00:14:33,625 INFO L281 TraceCheckUtils]: 7: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,625 INFO L281 TraceCheckUtils]: 8: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,626 INFO L281 TraceCheckUtils]: 9: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,626 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #111#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,626 INFO L281 TraceCheckUtils]: 11: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,626 INFO L264 TraceCheckUtils]: 12: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:33,626 INFO L281 TraceCheckUtils]: 13: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,626 INFO L281 TraceCheckUtils]: 14: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,626 INFO L281 TraceCheckUtils]: 15: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,627 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #113#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,627 INFO L281 TraceCheckUtils]: 17: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,627 INFO L281 TraceCheckUtils]: 18: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,628 INFO L281 TraceCheckUtils]: 19: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,628 INFO L264 TraceCheckUtils]: 20: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:33,628 INFO L281 TraceCheckUtils]: 21: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,628 INFO L281 TraceCheckUtils]: 22: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,628 INFO L281 TraceCheckUtils]: 23: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,628 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #115#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,629 INFO L281 TraceCheckUtils]: 25: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,629 INFO L281 TraceCheckUtils]: 26: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,629 INFO L281 TraceCheckUtils]: 27: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,629 INFO L281 TraceCheckUtils]: 28: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,630 INFO L281 TraceCheckUtils]: 29: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,630 INFO L281 TraceCheckUtils]: 30: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,630 INFO L281 TraceCheckUtils]: 31: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,630 INFO L281 TraceCheckUtils]: 32: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 33: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 34: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 35: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,631 INFO L264 TraceCheckUtils]: 36: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 37: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 38: Hoare triple {46716#true} assume !(~n <= 0); {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 39: Hoare triple {46716#true} assume ~n - 1 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 40: Hoare triple {46716#true} assume ~n - 1 >= -2147483648; {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L264 TraceCheckUtils]: 41: Hoare triple {46716#true} call #t~ret0 := fact(~n - 1); {46716#true} is VALID [2021-09-14 00:14:33,631 INFO L281 TraceCheckUtils]: 42: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 43: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 44: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {46716#true} {46716#true} #109#return; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 46: Hoare triple {46716#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 47: Hoare triple {46716#true} assume ~n * #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 48: Hoare triple {46716#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L281 TraceCheckUtils]: 49: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,632 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #117#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,633 INFO L281 TraceCheckUtils]: 51: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,633 INFO L264 TraceCheckUtils]: 52: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:33,633 INFO L281 TraceCheckUtils]: 53: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,633 INFO L281 TraceCheckUtils]: 54: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,633 INFO L281 TraceCheckUtils]: 55: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,633 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #119#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,633 INFO L281 TraceCheckUtils]: 57: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 58: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 59: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,634 INFO L264 TraceCheckUtils]: 60: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 61: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 62: Hoare triple {46716#true} assume !(~n <= 0); {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 63: Hoare triple {46716#true} assume ~n - 1 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 64: Hoare triple {46716#true} assume ~n - 1 >= -2147483648; {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L264 TraceCheckUtils]: 65: Hoare triple {46716#true} call #t~ret0 := fact(~n - 1); {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 66: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 67: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:33,634 INFO L281 TraceCheckUtils]: 68: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {46716#true} {46716#true} #109#return; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L281 TraceCheckUtils]: 70: Hoare triple {46716#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L281 TraceCheckUtils]: 71: Hoare triple {46716#true} assume ~n * #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L281 TraceCheckUtils]: 72: Hoare triple {46716#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L281 TraceCheckUtils]: 73: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:33,635 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {46716#true} {46727#(<= ULTIMATE.start_main_~n~0 0)} #121#return; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,635 INFO L281 TraceCheckUtils]: 75: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,636 INFO L281 TraceCheckUtils]: 76: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,636 INFO L281 TraceCheckUtils]: 77: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,636 INFO L281 TraceCheckUtils]: 78: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,637 INFO L281 TraceCheckUtils]: 79: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,638 INFO L281 TraceCheckUtils]: 80: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,638 INFO L281 TraceCheckUtils]: 81: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,638 INFO L281 TraceCheckUtils]: 82: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,638 INFO L281 TraceCheckUtils]: 83: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,639 INFO L281 TraceCheckUtils]: 84: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~x~0); {46727#(<= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:33,639 INFO L281 TraceCheckUtils]: 85: Hoare triple {46727#(<= ULTIMATE.start_main_~n~0 0)} main_#t~post7 := main_~n~0; {46977#(<= |ULTIMATE.start_main_#t~post7| 0)} is VALID [2021-09-14 00:14:33,639 INFO L281 TraceCheckUtils]: 86: Hoare triple {46977#(<= |ULTIMATE.start_main_#t~post7| 0)} assume 1 + main_#t~post7 <= 2147483647; {46977#(<= |ULTIMATE.start_main_#t~post7| 0)} is VALID [2021-09-14 00:14:33,641 INFO L281 TraceCheckUtils]: 87: Hoare triple {46977#(<= |ULTIMATE.start_main_#t~post7| 0)} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {46984#(<= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:33,642 INFO L281 TraceCheckUtils]: 88: Hoare triple {46984#(<= ULTIMATE.start_main_~n~0 1)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {46984#(<= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:33,642 INFO L281 TraceCheckUtils]: 89: Hoare triple {46984#(<= ULTIMATE.start_main_~n~0 1)} assume !!(main_~k~0 <= main_~x~0); {46984#(<= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:33,642 INFO L281 TraceCheckUtils]: 90: Hoare triple {46984#(<= ULTIMATE.start_main_~n~0 1)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {46994#(<= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:14:33,643 INFO L264 TraceCheckUtils]: 91: Hoare triple {46994#(<= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {46998#(<= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:33,643 INFO L281 TraceCheckUtils]: 92: Hoare triple {46998#(<= |fact_#in~n| 1)} ~n := #in~n; {47002#(<= fact_~n 1)} is VALID [2021-09-14 00:14:33,643 INFO L281 TraceCheckUtils]: 93: Hoare triple {47002#(<= fact_~n 1)} assume !(~n <= 0); {47002#(<= fact_~n 1)} is VALID [2021-09-14 00:14:33,643 INFO L281 TraceCheckUtils]: 94: Hoare triple {47002#(<= fact_~n 1)} assume !(~n - 1 <= 2147483647); {46717#false} is VALID [2021-09-14 00:14:33,644 INFO L134 CoverageAnalysis]: Checked inductivity of 150 backedges. 18 proven. 7 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2021-09-14 00:14:33,644 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:34,074 INFO L281 TraceCheckUtils]: 94: Hoare triple {47009#(<= fact_~n 2147483648)} assume !(~n - 1 <= 2147483647); {46717#false} is VALID [2021-09-14 00:14:34,075 INFO L281 TraceCheckUtils]: 93: Hoare triple {47009#(<= fact_~n 2147483648)} assume !(~n <= 0); {47009#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:14:34,075 INFO L281 TraceCheckUtils]: 92: Hoare triple {47016#(<= |fact_#in~n| 2147483648)} ~n := #in~n; {47009#(<= fact_~n 2147483648)} is VALID [2021-09-14 00:14:34,075 INFO L264 TraceCheckUtils]: 91: Hoare triple {47020#(<= ULTIMATE.start_binomialCoefficient_~n 2147483648)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {47016#(<= |fact_#in~n| 2147483648)} is VALID [2021-09-14 00:14:34,076 INFO L281 TraceCheckUtils]: 90: Hoare triple {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {47020#(<= ULTIMATE.start_binomialCoefficient_~n 2147483648)} is VALID [2021-09-14 00:14:34,076 INFO L281 TraceCheckUtils]: 89: Hoare triple {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} assume !!(main_~k~0 <= main_~x~0); {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} is VALID [2021-09-14 00:14:34,076 INFO L281 TraceCheckUtils]: 88: Hoare triple {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} is VALID [2021-09-14 00:14:34,078 INFO L281 TraceCheckUtils]: 87: Hoare triple {47034#(<= |ULTIMATE.start_main_#t~post7| 2147483647)} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {47024#(<= ULTIMATE.start_main_~n~0 2147483648)} is VALID [2021-09-14 00:14:34,079 INFO L281 TraceCheckUtils]: 86: Hoare triple {47034#(<= |ULTIMATE.start_main_#t~post7| 2147483647)} assume 1 + main_#t~post7 <= 2147483647; {47034#(<= |ULTIMATE.start_main_#t~post7| 2147483647)} is VALID [2021-09-14 00:14:34,079 INFO L281 TraceCheckUtils]: 85: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} main_#t~post7 := main_~n~0; {47034#(<= |ULTIMATE.start_main_#t~post7| 2147483647)} is VALID [2021-09-14 00:14:34,079 INFO L281 TraceCheckUtils]: 84: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !(main_~k~0 <= main_~x~0); {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,079 INFO L281 TraceCheckUtils]: 83: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,080 INFO L281 TraceCheckUtils]: 82: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume 1 + main_#t~post8 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,080 INFO L281 TraceCheckUtils]: 81: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} main_#t~post8 := main_~k~0; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,080 INFO L281 TraceCheckUtils]: 80: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,080 INFO L281 TraceCheckUtils]: 79: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,081 INFO L281 TraceCheckUtils]: 78: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,081 INFO L281 TraceCheckUtils]: 77: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,081 INFO L281 TraceCheckUtils]: 76: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,081 INFO L281 TraceCheckUtils]: 75: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,082 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #121#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 73: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 72: Hoare triple {46716#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 71: Hoare triple {46716#true} assume ~n * #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 70: Hoare triple {46716#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {46716#true} {46716#true} #109#return; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 68: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 67: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 66: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L264 TraceCheckUtils]: 65: Hoare triple {46716#true} call #t~ret0 := fact(~n - 1); {46716#true} is VALID [2021-09-14 00:14:34,082 INFO L281 TraceCheckUtils]: 64: Hoare triple {46716#true} assume ~n - 1 >= -2147483648; {46716#true} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 63: Hoare triple {46716#true} assume ~n - 1 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 62: Hoare triple {46716#true} assume !(~n <= 0); {46716#true} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 61: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,083 INFO L264 TraceCheckUtils]: 60: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 59: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 58: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,083 INFO L281 TraceCheckUtils]: 57: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,084 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #119#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,084 INFO L281 TraceCheckUtils]: 55: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,084 INFO L281 TraceCheckUtils]: 54: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,084 INFO L281 TraceCheckUtils]: 53: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,084 INFO L264 TraceCheckUtils]: 52: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:34,084 INFO L281 TraceCheckUtils]: 51: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,085 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #117#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 49: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 48: Hoare triple {46716#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 47: Hoare triple {46716#true} assume ~n * #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 46: Hoare triple {46716#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {46716#true} {46716#true} #109#return; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 44: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 43: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 42: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L264 TraceCheckUtils]: 41: Hoare triple {46716#true} call #t~ret0 := fact(~n - 1); {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 40: Hoare triple {46716#true} assume ~n - 1 >= -2147483648; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 39: Hoare triple {46716#true} assume ~n - 1 <= 2147483647; {46716#true} is VALID [2021-09-14 00:14:34,085 INFO L281 TraceCheckUtils]: 38: Hoare triple {46716#true} assume !(~n <= 0); {46716#true} is VALID [2021-09-14 00:14:34,086 INFO L281 TraceCheckUtils]: 37: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,086 INFO L264 TraceCheckUtils]: 36: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {46716#true} is VALID [2021-09-14 00:14:34,086 INFO L281 TraceCheckUtils]: 35: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,086 INFO L281 TraceCheckUtils]: 34: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !!(main_~k~0 <= main_~x~0); {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,086 INFO L281 TraceCheckUtils]: 33: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,087 INFO L281 TraceCheckUtils]: 32: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume 1 + main_#t~post8 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,087 INFO L281 TraceCheckUtils]: 31: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} main_#t~post8 := main_~k~0; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,087 INFO L281 TraceCheckUtils]: 30: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,087 INFO L281 TraceCheckUtils]: 29: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,088 INFO L281 TraceCheckUtils]: 28: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,088 INFO L281 TraceCheckUtils]: 27: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,088 INFO L281 TraceCheckUtils]: 26: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,088 INFO L281 TraceCheckUtils]: 25: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,089 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #115#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,089 INFO L281 TraceCheckUtils]: 23: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,089 INFO L281 TraceCheckUtils]: 22: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,089 INFO L281 TraceCheckUtils]: 21: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,089 INFO L264 TraceCheckUtils]: 20: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:34,089 INFO L281 TraceCheckUtils]: 19: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,093 INFO L281 TraceCheckUtils]: 18: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,093 INFO L281 TraceCheckUtils]: 17: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,093 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #113#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,094 INFO L281 TraceCheckUtils]: 15: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,094 INFO L281 TraceCheckUtils]: 14: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,094 INFO L281 TraceCheckUtils]: 13: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,094 INFO L264 TraceCheckUtils]: 12: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {46716#true} is VALID [2021-09-14 00:14:34,094 INFO L281 TraceCheckUtils]: 11: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,094 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {46716#true} {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} #111#return; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,094 INFO L281 TraceCheckUtils]: 9: Hoare triple {46716#true} assume true; {46716#true} is VALID [2021-09-14 00:14:34,095 INFO L281 TraceCheckUtils]: 8: Hoare triple {46716#true} assume ~n <= 0;#res := 1; {46716#true} is VALID [2021-09-14 00:14:34,095 INFO L281 TraceCheckUtils]: 7: Hoare triple {46716#true} ~n := #in~n; {46716#true} is VALID [2021-09-14 00:14:34,095 INFO L264 TraceCheckUtils]: 6: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {46716#true} is VALID [2021-09-14 00:14:34,095 INFO L281 TraceCheckUtils]: 5: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,095 INFO L281 TraceCheckUtils]: 4: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !!(main_~k~0 <= main_~x~0); {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,095 INFO L281 TraceCheckUtils]: 3: Hoare triple {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,096 INFO L281 TraceCheckUtils]: 2: Hoare triple {46716#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {47041#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:34,096 INFO L281 TraceCheckUtils]: 1: Hoare triple {46716#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {46716#true} is VALID [2021-09-14 00:14:34,096 INFO L281 TraceCheckUtils]: 0: Hoare triple {46716#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {46716#true} is VALID [2021-09-14 00:14:34,096 INFO L134 CoverageAnalysis]: Checked inductivity of 150 backedges. 18 proven. 7 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2021-09-14 00:14:34,096 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:34,096 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1031375154] [2021-09-14 00:14:34,096 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:34,096 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1530001960] [2021-09-14 00:14:34,096 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1530001960] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:34,097 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:34,097 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2021-09-14 00:14:34,097 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1906618806] [2021-09-14 00:14:34,097 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 95 [2021-09-14 00:14:34,097 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:34,097 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2021-09-14 00:14:34,191 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:34,191 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2021-09-14 00:14:34,191 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:34,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2021-09-14 00:14:34,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2021-09-14 00:14:34,192 INFO L87 Difference]: Start difference. First operand 385 states and 466 transitions. Second operand has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2021-09-14 00:14:36,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:36,046 INFO L93 Difference]: Finished difference Result 596 states and 752 transitions. [2021-09-14 00:14:36,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2021-09-14 00:14:36,046 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 95 [2021-09-14 00:14:36,046 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:36,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2021-09-14 00:14:36,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 224 transitions. [2021-09-14 00:14:36,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2021-09-14 00:14:36,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 224 transitions. [2021-09-14 00:14:36,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 224 transitions. [2021-09-14 00:14:36,268 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 224 edges. 224 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:36,283 INFO L225 Difference]: With dead ends: 596 [2021-09-14 00:14:36,283 INFO L226 Difference]: Without dead ends: 595 [2021-09-14 00:14:36,284 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 178 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 126.88ms TimeCoverageRelationStatistics Valid=108, Invalid=444, Unknown=0, NotChecked=0, Total=552 [2021-09-14 00:14:36,284 INFO L928 BasicCegarLoop]: 23 mSDtfsCounter, 223 mSDsluCounter, 501 mSDsCounter, 0 mSdLazyCounter, 680 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 504.51ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 237 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 728 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 2.76ms SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 680 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 507.14ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:36,284 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [237 Valid, 157 Invalid, 728 Unknown, 0 Unchecked, 2.76ms Time], IncrementalHoareTripleChecker [48 Valid, 680 Invalid, 0 Unknown, 0 Unchecked, 507.14ms Time] [2021-09-14 00:14:36,285 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 595 states. [2021-09-14 00:14:36,910 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 595 to 571. [2021-09-14 00:14:36,910 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:36,910 INFO L82 GeneralOperation]: Start isEquivalent. First operand 595 states. Second operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) [2021-09-14 00:14:36,911 INFO L74 IsIncluded]: Start isIncluded. First operand 595 states. Second operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) [2021-09-14 00:14:36,911 INFO L87 Difference]: Start difference. First operand 595 states. Second operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) [2021-09-14 00:14:36,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:36,926 INFO L93 Difference]: Finished difference Result 595 states and 750 transitions. [2021-09-14 00:14:36,926 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 750 transitions. [2021-09-14 00:14:36,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:36,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:36,928 INFO L74 IsIncluded]: Start isIncluded. First operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) Second operand 595 states. [2021-09-14 00:14:36,928 INFO L87 Difference]: Start difference. First operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) Second operand 595 states. [2021-09-14 00:14:36,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:36,942 INFO L93 Difference]: Finished difference Result 595 states and 750 transitions. [2021-09-14 00:14:36,942 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 750 transitions. [2021-09-14 00:14:36,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:36,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:36,943 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:36,943 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:36,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 571 states, 451 states have (on average 1.1618625277161863) internal successors, (524), 456 states have internal predecessors, (524), 83 states have call successors, (83), 23 states have call predecessors, (83), 29 states have return successors, (121), 91 states have call predecessors, (121), 83 states have call successors, (121) [2021-09-14 00:14:36,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 571 states to 571 states and 728 transitions. [2021-09-14 00:14:36,958 INFO L78 Accepts]: Start accepts. Automaton has 571 states and 728 transitions. Word has length 95 [2021-09-14 00:14:36,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:36,958 INFO L470 AbstractCegarLoop]: Abstraction has 571 states and 728 transitions. [2021-09-14 00:14:36,959 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 11 states have (on average 7.909090909090909) internal successors, (87), 12 states have internal predecessors, (87), 5 states have call successors, (15), 3 states have call predecessors, (15), 1 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2021-09-14 00:14:36,959 INFO L276 IsEmpty]: Start isEmpty. Operand 571 states and 728 transitions. [2021-09-14 00:14:36,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2021-09-14 00:14:36,959 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:36,960 INFO L513 BasicCegarLoop]: trace histogram [10, 9, 7, 3, 3, 3, 3, 3, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:36,978 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:37,172 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:37,173 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:37,173 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:37,173 INFO L82 PathProgramCache]: Analyzing trace with hash 1449152353, now seen corresponding path program 1 times [2021-09-14 00:14:37,173 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:37,173 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1329419651] [2021-09-14 00:14:37,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:37,173 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:37,177 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:37,177 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2002188927] [2021-09-14 00:14:37,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:37,177 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:37,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:37,178 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:37,179 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2021-09-14 00:14:37,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:37,217 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 19 conjunts are in the unsatisfiable core [2021-09-14 00:14:37,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:37,229 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:37,633 INFO L281 TraceCheckUtils]: 0: Hoare triple {49949#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {49949#true} is VALID [2021-09-14 00:14:37,633 INFO L281 TraceCheckUtils]: 1: Hoare triple {49949#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {49949#true} is VALID [2021-09-14 00:14:37,633 INFO L281 TraceCheckUtils]: 2: Hoare triple {49949#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,633 INFO L281 TraceCheckUtils]: 3: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,633 INFO L281 TraceCheckUtils]: 4: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,634 INFO L281 TraceCheckUtils]: 5: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,634 INFO L264 TraceCheckUtils]: 6: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {49949#true} is VALID [2021-09-14 00:14:37,634 INFO L281 TraceCheckUtils]: 7: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,634 INFO L281 TraceCheckUtils]: 8: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,634 INFO L281 TraceCheckUtils]: 9: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,634 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #111#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,635 INFO L281 TraceCheckUtils]: 11: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,635 INFO L264 TraceCheckUtils]: 12: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:37,635 INFO L281 TraceCheckUtils]: 13: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,635 INFO L281 TraceCheckUtils]: 14: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,635 INFO L281 TraceCheckUtils]: 15: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,635 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #113#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 17: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 18: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 19: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,636 INFO L264 TraceCheckUtils]: 20: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 21: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 22: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,636 INFO L281 TraceCheckUtils]: 23: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,637 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #115#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,637 INFO L281 TraceCheckUtils]: 25: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,637 INFO L281 TraceCheckUtils]: 26: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,637 INFO L281 TraceCheckUtils]: 27: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,638 INFO L281 TraceCheckUtils]: 28: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,638 INFO L281 TraceCheckUtils]: 29: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,638 INFO L281 TraceCheckUtils]: 30: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,638 INFO L281 TraceCheckUtils]: 31: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,639 INFO L281 TraceCheckUtils]: 32: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,639 INFO L281 TraceCheckUtils]: 33: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,639 INFO L281 TraceCheckUtils]: 34: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume !!(main_~k~0 <= main_~x~0); {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,639 INFO L281 TraceCheckUtils]: 35: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,640 INFO L264 TraceCheckUtils]: 36: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 37: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 38: Hoare triple {49949#true} assume !(~n <= 0); {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 39: Hoare triple {49949#true} assume ~n - 1 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 40: Hoare triple {49949#true} assume ~n - 1 >= -2147483648; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L264 TraceCheckUtils]: 41: Hoare triple {49949#true} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 42: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 43: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 44: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {49949#true} {49949#true} #109#return; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 46: Hoare triple {49949#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 47: Hoare triple {49949#true} assume ~n * #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 48: Hoare triple {49949#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {49949#true} is VALID [2021-09-14 00:14:37,640 INFO L281 TraceCheckUtils]: 49: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,641 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #117#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,641 INFO L281 TraceCheckUtils]: 51: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,641 INFO L264 TraceCheckUtils]: 52: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:37,641 INFO L281 TraceCheckUtils]: 53: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,641 INFO L281 TraceCheckUtils]: 54: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,641 INFO L281 TraceCheckUtils]: 55: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,642 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #119#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,642 INFO L281 TraceCheckUtils]: 57: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,642 INFO L281 TraceCheckUtils]: 58: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,642 INFO L281 TraceCheckUtils]: 59: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,642 INFO L264 TraceCheckUtils]: 60: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:37,642 INFO L281 TraceCheckUtils]: 61: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 62: Hoare triple {49949#true} assume !(~n <= 0); {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 63: Hoare triple {49949#true} assume ~n - 1 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 64: Hoare triple {49949#true} assume ~n - 1 >= -2147483648; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L264 TraceCheckUtils]: 65: Hoare triple {49949#true} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 66: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 67: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 68: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {49949#true} {49949#true} #109#return; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 70: Hoare triple {49949#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 71: Hoare triple {49949#true} assume ~n * #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 72: Hoare triple {49949#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {49949#true} is VALID [2021-09-14 00:14:37,643 INFO L281 TraceCheckUtils]: 73: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:37,644 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {49949#true} {49960#(= ULTIMATE.start_main_~n~0 0)} #121#return; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,644 INFO L281 TraceCheckUtils]: 75: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,644 INFO L281 TraceCheckUtils]: 76: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,644 INFO L281 TraceCheckUtils]: 77: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,645 INFO L281 TraceCheckUtils]: 78: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,645 INFO L281 TraceCheckUtils]: 79: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,645 INFO L281 TraceCheckUtils]: 80: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,645 INFO L281 TraceCheckUtils]: 81: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} main_#t~post8 := main_~k~0; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,646 INFO L281 TraceCheckUtils]: 82: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 <= 2147483647; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,646 INFO L281 TraceCheckUtils]: 83: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,646 INFO L281 TraceCheckUtils]: 84: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} assume !(main_~k~0 <= main_~x~0); {49960#(= ULTIMATE.start_main_~n~0 0)} is VALID [2021-09-14 00:14:37,646 INFO L281 TraceCheckUtils]: 85: Hoare triple {49960#(= ULTIMATE.start_main_~n~0 0)} main_#t~post7 := main_~n~0; {50210#(= |ULTIMATE.start_main_#t~post7| 0)} is VALID [2021-09-14 00:14:37,647 INFO L281 TraceCheckUtils]: 86: Hoare triple {50210#(= |ULTIMATE.start_main_#t~post7| 0)} assume 1 + main_#t~post7 <= 2147483647; {50210#(= |ULTIMATE.start_main_#t~post7| 0)} is VALID [2021-09-14 00:14:37,647 INFO L281 TraceCheckUtils]: 87: Hoare triple {50210#(= |ULTIMATE.start_main_#t~post7| 0)} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {50217#(= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:37,647 INFO L281 TraceCheckUtils]: 88: Hoare triple {50217#(= ULTIMATE.start_main_~n~0 1)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {50217#(= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:37,647 INFO L281 TraceCheckUtils]: 89: Hoare triple {50217#(= ULTIMATE.start_main_~n~0 1)} assume !!(main_~k~0 <= main_~x~0); {50217#(= ULTIMATE.start_main_~n~0 1)} is VALID [2021-09-14 00:14:37,648 INFO L281 TraceCheckUtils]: 90: Hoare triple {50217#(= ULTIMATE.start_main_~n~0 1)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {50227#(= ULTIMATE.start_binomialCoefficient_~n 1)} is VALID [2021-09-14 00:14:37,648 INFO L264 TraceCheckUtils]: 91: Hoare triple {50227#(= ULTIMATE.start_binomialCoefficient_~n 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {50231#(= |fact_#in~n| 1)} is VALID [2021-09-14 00:14:37,648 INFO L281 TraceCheckUtils]: 92: Hoare triple {50231#(= |fact_#in~n| 1)} ~n := #in~n; {50235#(= fact_~n 1)} is VALID [2021-09-14 00:14:37,649 INFO L281 TraceCheckUtils]: 93: Hoare triple {50235#(= fact_~n 1)} assume !(~n <= 0); {50235#(= fact_~n 1)} is VALID [2021-09-14 00:14:37,649 INFO L281 TraceCheckUtils]: 94: Hoare triple {50235#(= fact_~n 1)} assume ~n - 1 <= 2147483647; {50235#(= fact_~n 1)} is VALID [2021-09-14 00:14:37,649 INFO L281 TraceCheckUtils]: 95: Hoare triple {50235#(= fact_~n 1)} assume ~n - 1 >= -2147483648; {50235#(= fact_~n 1)} is VALID [2021-09-14 00:14:37,649 INFO L264 TraceCheckUtils]: 96: Hoare triple {50235#(= fact_~n 1)} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:37,649 INFO L281 TraceCheckUtils]: 97: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:37,650 INFO L281 TraceCheckUtils]: 98: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {50254#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:37,650 INFO L281 TraceCheckUtils]: 99: Hoare triple {50254#(= |fact_#res| 1)} assume true; {50254#(= |fact_#res| 1)} is VALID [2021-09-14 00:14:37,650 INFO L276 TraceCheckUtils]: 100: Hoare quadruple {50254#(= |fact_#res| 1)} {50235#(= fact_~n 1)} #109#return; {50261#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} is VALID [2021-09-14 00:14:37,651 INFO L281 TraceCheckUtils]: 101: Hoare triple {50261#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {50261#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} is VALID [2021-09-14 00:14:37,651 INFO L281 TraceCheckUtils]: 102: Hoare triple {50261#(and (= fact_~n 1) (= |fact_#t~ret0| 1))} assume !(~n * #t~ret0 <= 2147483647); {49950#false} is VALID [2021-09-14 00:14:37,651 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 42 proven. 9 refuted. 0 times theorem prover too weak. 141 trivial. 0 not checked. [2021-09-14 00:14:37,651 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:14:38,703 INFO L281 TraceCheckUtils]: 102: Hoare triple {50268#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume !(~n * #t~ret0 <= 2147483647); {49950#false} is VALID [2021-09-14 00:14:38,703 INFO L281 TraceCheckUtils]: 101: Hoare triple {50268#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {50268#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:14:38,704 INFO L276 TraceCheckUtils]: 100: Hoare quadruple {50279#(forall ((v_fact_~n_BEFORE_CALL_14 Int)) (or (< 2147483647 v_fact_~n_BEFORE_CALL_14) (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_14) 2147483647)))} {50275#(<= fact_~n 2147483647)} #109#return; {50268#(<= (* fact_~n |fact_#t~ret0|) 2147483647)} is VALID [2021-09-14 00:14:38,705 INFO L281 TraceCheckUtils]: 99: Hoare triple {50279#(forall ((v_fact_~n_BEFORE_CALL_14 Int)) (or (< 2147483647 v_fact_~n_BEFORE_CALL_14) (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_14) 2147483647)))} assume true; {50279#(forall ((v_fact_~n_BEFORE_CALL_14 Int)) (or (< 2147483647 v_fact_~n_BEFORE_CALL_14) (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_14) 2147483647)))} is VALID [2021-09-14 00:14:38,705 INFO L281 TraceCheckUtils]: 98: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {50279#(forall ((v_fact_~n_BEFORE_CALL_14 Int)) (or (< 2147483647 v_fact_~n_BEFORE_CALL_14) (<= (* |fact_#res| v_fact_~n_BEFORE_CALL_14) 2147483647)))} is VALID [2021-09-14 00:14:38,705 INFO L281 TraceCheckUtils]: 97: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,705 INFO L264 TraceCheckUtils]: 96: Hoare triple {50275#(<= fact_~n 2147483647)} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:38,705 INFO L281 TraceCheckUtils]: 95: Hoare triple {50275#(<= fact_~n 2147483647)} assume ~n - 1 >= -2147483648; {50275#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:38,706 INFO L281 TraceCheckUtils]: 94: Hoare triple {50275#(<= fact_~n 2147483647)} assume ~n - 1 <= 2147483647; {50275#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:38,706 INFO L281 TraceCheckUtils]: 93: Hoare triple {50275#(<= fact_~n 2147483647)} assume !(~n <= 0); {50275#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:38,706 INFO L281 TraceCheckUtils]: 92: Hoare triple {50301#(<= |fact_#in~n| 2147483647)} ~n := #in~n; {50275#(<= fact_~n 2147483647)} is VALID [2021-09-14 00:14:38,706 INFO L264 TraceCheckUtils]: 91: Hoare triple {50305#(<= ULTIMATE.start_binomialCoefficient_~n 2147483647)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {50301#(<= |fact_#in~n| 2147483647)} is VALID [2021-09-14 00:14:38,707 INFO L281 TraceCheckUtils]: 90: Hoare triple {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {50305#(<= ULTIMATE.start_binomialCoefficient_~n 2147483647)} is VALID [2021-09-14 00:14:38,707 INFO L281 TraceCheckUtils]: 89: Hoare triple {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !!(main_~k~0 <= main_~x~0); {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:38,707 INFO L281 TraceCheckUtils]: 88: Hoare triple {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:38,709 INFO L281 TraceCheckUtils]: 87: Hoare triple {50319#(<= |ULTIMATE.start_main_#t~post7| 2147483646)} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {50309#(<= ULTIMATE.start_main_~n~0 2147483647)} is VALID [2021-09-14 00:14:38,710 INFO L281 TraceCheckUtils]: 86: Hoare triple {50319#(<= |ULTIMATE.start_main_#t~post7| 2147483646)} assume 1 + main_#t~post7 <= 2147483647; {50319#(<= |ULTIMATE.start_main_#t~post7| 2147483646)} is VALID [2021-09-14 00:14:38,710 INFO L281 TraceCheckUtils]: 85: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} main_#t~post7 := main_~n~0; {50319#(<= |ULTIMATE.start_main_#t~post7| 2147483646)} is VALID [2021-09-14 00:14:38,710 INFO L281 TraceCheckUtils]: 84: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume !(main_~k~0 <= main_~x~0); {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,710 INFO L281 TraceCheckUtils]: 83: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,711 INFO L281 TraceCheckUtils]: 82: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume 1 + main_#t~post8 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,711 INFO L281 TraceCheckUtils]: 81: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} main_#t~post8 := main_~k~0; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,711 INFO L281 TraceCheckUtils]: 80: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,711 INFO L281 TraceCheckUtils]: 79: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,712 INFO L281 TraceCheckUtils]: 78: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,712 INFO L281 TraceCheckUtils]: 77: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,712 INFO L281 TraceCheckUtils]: 76: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,712 INFO L281 TraceCheckUtils]: 75: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,713 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #121#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 73: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 72: Hoare triple {49949#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 71: Hoare triple {49949#true} assume ~n * #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 70: Hoare triple {49949#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {49949#true} {49949#true} #109#return; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 68: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 67: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L281 TraceCheckUtils]: 66: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,713 INFO L264 TraceCheckUtils]: 65: Hoare triple {49949#true} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 64: Hoare triple {49949#true} assume ~n - 1 >= -2147483648; {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 63: Hoare triple {49949#true} assume ~n - 1 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 62: Hoare triple {49949#true} assume !(~n <= 0); {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 61: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L264 TraceCheckUtils]: 60: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 59: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 58: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,714 INFO L281 TraceCheckUtils]: 57: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,715 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #119#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,715 INFO L281 TraceCheckUtils]: 55: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,715 INFO L281 TraceCheckUtils]: 54: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,715 INFO L281 TraceCheckUtils]: 53: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,715 INFO L264 TraceCheckUtils]: 52: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:38,715 INFO L281 TraceCheckUtils]: 51: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,716 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #117#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 49: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 48: Hoare triple {49949#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 47: Hoare triple {49949#true} assume ~n * #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 46: Hoare triple {49949#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {49949#true} {49949#true} #109#return; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 44: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 43: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 42: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L264 TraceCheckUtils]: 41: Hoare triple {49949#true} call #t~ret0 := fact(~n - 1); {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 40: Hoare triple {49949#true} assume ~n - 1 >= -2147483648; {49949#true} is VALID [2021-09-14 00:14:38,716 INFO L281 TraceCheckUtils]: 39: Hoare triple {49949#true} assume ~n - 1 <= 2147483647; {49949#true} is VALID [2021-09-14 00:14:38,717 INFO L281 TraceCheckUtils]: 38: Hoare triple {49949#true} assume !(~n <= 0); {49949#true} is VALID [2021-09-14 00:14:38,717 INFO L281 TraceCheckUtils]: 37: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,717 INFO L264 TraceCheckUtils]: 36: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {49949#true} is VALID [2021-09-14 00:14:38,717 INFO L281 TraceCheckUtils]: 35: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,717 INFO L281 TraceCheckUtils]: 34: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume !!(main_~k~0 <= main_~x~0); {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,717 INFO L281 TraceCheckUtils]: 33: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,718 INFO L281 TraceCheckUtils]: 32: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume 1 + main_#t~post8 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,718 INFO L281 TraceCheckUtils]: 31: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} main_#t~post8 := main_~k~0; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,718 INFO L281 TraceCheckUtils]: 30: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,718 INFO L281 TraceCheckUtils]: 29: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,719 INFO L281 TraceCheckUtils]: 28: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,719 INFO L281 TraceCheckUtils]: 27: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,719 INFO L281 TraceCheckUtils]: 26: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,719 INFO L281 TraceCheckUtils]: 25: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,720 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #115#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,720 INFO L281 TraceCheckUtils]: 23: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,720 INFO L281 TraceCheckUtils]: 22: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,720 INFO L281 TraceCheckUtils]: 21: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,720 INFO L264 TraceCheckUtils]: 20: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:38,720 INFO L281 TraceCheckUtils]: 19: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,721 INFO L281 TraceCheckUtils]: 18: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,721 INFO L281 TraceCheckUtils]: 17: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,721 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #113#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,721 INFO L281 TraceCheckUtils]: 15: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,721 INFO L281 TraceCheckUtils]: 14: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,721 INFO L281 TraceCheckUtils]: 13: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,721 INFO L264 TraceCheckUtils]: 12: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {49949#true} is VALID [2021-09-14 00:14:38,722 INFO L281 TraceCheckUtils]: 11: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,722 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {49949#true} {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} #111#return; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,722 INFO L281 TraceCheckUtils]: 9: Hoare triple {49949#true} assume true; {49949#true} is VALID [2021-09-14 00:14:38,722 INFO L281 TraceCheckUtils]: 8: Hoare triple {49949#true} assume ~n <= 0;#res := 1; {49949#true} is VALID [2021-09-14 00:14:38,722 INFO L281 TraceCheckUtils]: 7: Hoare triple {49949#true} ~n := #in~n; {49949#true} is VALID [2021-09-14 00:14:38,722 INFO L264 TraceCheckUtils]: 6: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {49949#true} is VALID [2021-09-14 00:14:38,723 INFO L281 TraceCheckUtils]: 5: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,723 INFO L281 TraceCheckUtils]: 4: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume !!(main_~k~0 <= main_~x~0); {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,723 INFO L281 TraceCheckUtils]: 3: Hoare triple {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,723 INFO L281 TraceCheckUtils]: 2: Hoare triple {49949#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {50326#(<= ULTIMATE.start_main_~n~0 2147483646)} is VALID [2021-09-14 00:14:38,723 INFO L281 TraceCheckUtils]: 1: Hoare triple {49949#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {49949#true} is VALID [2021-09-14 00:14:38,724 INFO L281 TraceCheckUtils]: 0: Hoare triple {49949#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {49949#true} is VALID [2021-09-14 00:14:38,724 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 42 proven. 9 refuted. 0 times theorem prover too weak. 141 trivial. 0 not checked. [2021-09-14 00:14:38,724 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:38,724 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1329419651] [2021-09-14 00:14:38,724 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:38,724 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2002188927] [2021-09-14 00:14:38,724 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2002188927] provided 0 perfect and 2 imperfect interpolant sequences [2021-09-14 00:14:38,724 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2021-09-14 00:14:38,724 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 17 [2021-09-14 00:14:38,724 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1593605414] [2021-09-14 00:14:38,725 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 103 [2021-09-14 00:14:38,725 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:38,725 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2021-09-14 00:14:38,852 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:38,852 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2021-09-14 00:14:38,852 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:38,852 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2021-09-14 00:14:38,852 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=260, Unknown=0, NotChecked=0, Total=306 [2021-09-14 00:14:38,853 INFO L87 Difference]: Start difference. First operand 571 states and 728 transitions. Second operand has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2021-09-14 00:14:43,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:43,171 INFO L93 Difference]: Finished difference Result 1047 states and 1346 transitions. [2021-09-14 00:14:43,171 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2021-09-14 00:14:43,171 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 103 [2021-09-14 00:14:43,171 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:43,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2021-09-14 00:14:43,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 293 transitions. [2021-09-14 00:14:43,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2021-09-14 00:14:43,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 293 transitions. [2021-09-14 00:14:43,175 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 293 transitions. [2021-09-14 00:14:43,414 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 293 edges. 293 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:43,430 INFO L225 Difference]: With dead ends: 1047 [2021-09-14 00:14:43,430 INFO L226 Difference]: Without dead ends: 611 [2021-09-14 00:14:43,431 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 189 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 135 ImplicationChecksByTransitivity, 919.61ms TimeCoverageRelationStatistics Valid=148, Invalid=844, Unknown=0, NotChecked=0, Total=992 [2021-09-14 00:14:43,431 INFO L928 BasicCegarLoop]: 30 mSDtfsCounter, 198 mSDsluCounter, 1114 mSDsCounter, 0 mSdLazyCounter, 1230 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1063.45ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 210 SdHoareTripleChecker+Valid, 309 SdHoareTripleChecker+Invalid, 1412 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 4.75ms SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 1230 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 126 IncrementalHoareTripleChecker+Unchecked, 1068.24ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:43,431 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [210 Valid, 309 Invalid, 1412 Unknown, 0 Unchecked, 4.75ms Time], IncrementalHoareTripleChecker [56 Valid, 1230 Invalid, 0 Unknown, 126 Unchecked, 1068.24ms Time] [2021-09-14 00:14:43,432 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 611 states. [2021-09-14 00:14:44,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 611 to 591. [2021-09-14 00:14:44,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:44,073 INFO L82 GeneralOperation]: Start isEquivalent. First operand 611 states. Second operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) [2021-09-14 00:14:44,074 INFO L74 IsIncluded]: Start isIncluded. First operand 611 states. Second operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) [2021-09-14 00:14:44,074 INFO L87 Difference]: Start difference. First operand 611 states. Second operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) [2021-09-14 00:14:44,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:44,087 INFO L93 Difference]: Finished difference Result 611 states and 767 transitions. [2021-09-14 00:14:44,087 INFO L276 IsEmpty]: Start isEmpty. Operand 611 states and 767 transitions. [2021-09-14 00:14:44,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:44,089 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:44,089 INFO L74 IsIncluded]: Start isIncluded. First operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) Second operand 611 states. [2021-09-14 00:14:44,089 INFO L87 Difference]: Start difference. First operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) Second operand 611 states. [2021-09-14 00:14:44,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:44,103 INFO L93 Difference]: Finished difference Result 611 states and 767 transitions. [2021-09-14 00:14:44,103 INFO L276 IsEmpty]: Start isEmpty. Operand 611 states and 767 transitions. [2021-09-14 00:14:44,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:44,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:44,104 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:44,104 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:44,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 591 states, 468 states have (on average 1.1517094017094016) internal successors, (539), 471 states have internal predecessors, (539), 84 states have call successors, (84), 24 states have call predecessors, (84), 31 states have return successors, (125), 95 states have call predecessors, (125), 84 states have call successors, (125) [2021-09-14 00:14:44,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 591 states to 591 states and 748 transitions. [2021-09-14 00:14:44,124 INFO L78 Accepts]: Start accepts. Automaton has 591 states and 748 transitions. Word has length 103 [2021-09-14 00:14:44,124 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:44,124 INFO L470 AbstractCegarLoop]: Abstraction has 591 states and 748 transitions. [2021-09-14 00:14:44,124 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 15 states have (on average 6.466666666666667) internal successors, (97), 16 states have internal predecessors, (97), 7 states have call successors, (17), 3 states have call predecessors, (17), 3 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2021-09-14 00:14:44,124 INFO L276 IsEmpty]: Start isEmpty. Operand 591 states and 748 transitions. [2021-09-14 00:14:44,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2021-09-14 00:14:44,125 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:44,125 INFO L513 BasicCegarLoop]: trace histogram [10, 10, 8, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 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] [2021-09-14 00:14:44,141 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:44,327 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:44,327 INFO L402 AbstractCegarLoop]: === Iteration 33 === Targeting ULTIMATE.startErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:44,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:44,328 INFO L82 PathProgramCache]: Analyzing trace with hash -1990161636, now seen corresponding path program 1 times [2021-09-14 00:14:44,328 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:44,328 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1493912771] [2021-09-14 00:14:44,328 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:44,328 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:44,332 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:44,333 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1377489616] [2021-09-14 00:14:44,333 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:44,333 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:44,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:44,334 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:44,335 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2021-09-14 00:14:44,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:44,369 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 5 conjunts are in the unsatisfiable core [2021-09-14 00:14:44,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:44,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:44,770 INFO L281 TraceCheckUtils]: 0: Hoare triple {53847#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {53847#true} is VALID [2021-09-14 00:14:44,770 INFO L281 TraceCheckUtils]: 1: Hoare triple {53847#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {53847#true} is VALID [2021-09-14 00:14:44,770 INFO L281 TraceCheckUtils]: 2: Hoare triple {53847#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 3: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 4: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 5: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,771 INFO L264 TraceCheckUtils]: 6: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {53847#true} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 7: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 8: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,771 INFO L281 TraceCheckUtils]: 9: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,772 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #111#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,772 INFO L281 TraceCheckUtils]: 11: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,772 INFO L264 TraceCheckUtils]: 12: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {53847#true} is VALID [2021-09-14 00:14:44,772 INFO L281 TraceCheckUtils]: 13: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,772 INFO L281 TraceCheckUtils]: 14: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,772 INFO L281 TraceCheckUtils]: 15: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,773 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #113#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,773 INFO L281 TraceCheckUtils]: 17: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,773 INFO L281 TraceCheckUtils]: 18: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,774 INFO L281 TraceCheckUtils]: 19: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,774 INFO L264 TraceCheckUtils]: 20: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {53847#true} is VALID [2021-09-14 00:14:44,774 INFO L281 TraceCheckUtils]: 21: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,774 INFO L281 TraceCheckUtils]: 22: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,774 INFO L281 TraceCheckUtils]: 23: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,774 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #115#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,775 INFO L281 TraceCheckUtils]: 25: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,775 INFO L281 TraceCheckUtils]: 26: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,775 INFO L281 TraceCheckUtils]: 27: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,775 INFO L281 TraceCheckUtils]: 28: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,776 INFO L281 TraceCheckUtils]: 29: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,776 INFO L281 TraceCheckUtils]: 30: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,776 INFO L281 TraceCheckUtils]: 31: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~post8 := main_~k~0; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,776 INFO L281 TraceCheckUtils]: 32: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 33: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 34: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume !!(main_~k~0 <= main_~x~0); {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 35: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,777 INFO L264 TraceCheckUtils]: 36: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {53847#true} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 37: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 38: Hoare triple {53847#true} assume !(~n <= 0); {53847#true} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 39: Hoare triple {53847#true} assume ~n - 1 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,777 INFO L281 TraceCheckUtils]: 40: Hoare triple {53847#true} assume ~n - 1 >= -2147483648; {53847#true} is VALID [2021-09-14 00:14:44,777 INFO L264 TraceCheckUtils]: 41: Hoare triple {53847#true} call #t~ret0 := fact(~n - 1); {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 42: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 43: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 44: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {53847#true} {53847#true} #109#return; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 46: Hoare triple {53847#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 47: Hoare triple {53847#true} assume ~n * #t~ret0 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 48: Hoare triple {53847#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L281 TraceCheckUtils]: 49: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,778 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #117#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,779 INFO L281 TraceCheckUtils]: 51: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,779 INFO L264 TraceCheckUtils]: 52: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {53847#true} is VALID [2021-09-14 00:14:44,779 INFO L281 TraceCheckUtils]: 53: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,779 INFO L281 TraceCheckUtils]: 54: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,779 INFO L281 TraceCheckUtils]: 55: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,779 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #119#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 57: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 58: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 59: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,780 INFO L264 TraceCheckUtils]: 60: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {53847#true} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 61: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 62: Hoare triple {53847#true} assume !(~n <= 0); {53847#true} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 63: Hoare triple {53847#true} assume ~n - 1 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,780 INFO L281 TraceCheckUtils]: 64: Hoare triple {53847#true} assume ~n - 1 >= -2147483648; {53847#true} is VALID [2021-09-14 00:14:44,780 INFO L264 TraceCheckUtils]: 65: Hoare triple {53847#true} call #t~ret0 := fact(~n - 1); {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 66: Hoare triple {53847#true} ~n := #in~n; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 67: Hoare triple {53847#true} assume ~n <= 0;#res := 1; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 68: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {53847#true} {53847#true} #109#return; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 70: Hoare triple {53847#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 71: Hoare triple {53847#true} assume ~n * #t~ret0 <= 2147483647; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 72: Hoare triple {53847#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L281 TraceCheckUtils]: 73: Hoare triple {53847#true} assume true; {53847#true} is VALID [2021-09-14 00:14:44,781 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {53847#true} {53858#(<= 0 ULTIMATE.start_main_~n~0)} #121#return; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,782 INFO L281 TraceCheckUtils]: 75: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,782 INFO L281 TraceCheckUtils]: 76: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,782 INFO L281 TraceCheckUtils]: 77: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,782 INFO L281 TraceCheckUtils]: 78: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,783 INFO L281 TraceCheckUtils]: 79: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,783 INFO L281 TraceCheckUtils]: 80: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,783 INFO L281 TraceCheckUtils]: 81: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~post8 := main_~k~0; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,783 INFO L281 TraceCheckUtils]: 82: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 <= 2147483647; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,784 INFO L281 TraceCheckUtils]: 83: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,784 INFO L281 TraceCheckUtils]: 84: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} assume !(main_~k~0 <= main_~x~0); {53858#(<= 0 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,784 INFO L281 TraceCheckUtils]: 85: Hoare triple {53858#(<= 0 ULTIMATE.start_main_~n~0)} main_#t~post7 := main_~n~0; {54108#(<= 0 |ULTIMATE.start_main_#t~post7|)} is VALID [2021-09-14 00:14:44,784 INFO L281 TraceCheckUtils]: 86: Hoare triple {54108#(<= 0 |ULTIMATE.start_main_#t~post7|)} assume 1 + main_#t~post7 <= 2147483647; {54108#(<= 0 |ULTIMATE.start_main_#t~post7|)} is VALID [2021-09-14 00:14:44,787 INFO L281 TraceCheckUtils]: 87: Hoare triple {54108#(<= 0 |ULTIMATE.start_main_#t~post7|)} assume 1 + main_#t~post7 >= -2147483648;main_~n~0 := 1 + main_#t~post7;havoc main_#t~post7; {54115#(<= 1 ULTIMATE.start_main_~n~0)} is VALID [2021-09-14 00:14:44,787 INFO L281 TraceCheckUtils]: 88: Hoare triple {54115#(<= 1 ULTIMATE.start_main_~n~0)} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {54119#(and (<= ULTIMATE.start_main_~k~0 0) (<= 1 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:44,787 INFO L281 TraceCheckUtils]: 89: Hoare triple {54119#(and (<= ULTIMATE.start_main_~k~0 0) (<= 1 ULTIMATE.start_main_~n~0))} assume !!(main_~k~0 <= main_~x~0); {54119#(and (<= ULTIMATE.start_main_~k~0 0) (<= 1 ULTIMATE.start_main_~n~0))} is VALID [2021-09-14 00:14:44,788 INFO L281 TraceCheckUtils]: 90: Hoare triple {54119#(and (<= ULTIMATE.start_main_~k~0 0) (<= 1 ULTIMATE.start_main_~n~0))} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {53848#false} is VALID [2021-09-14 00:14:44,788 INFO L264 TraceCheckUtils]: 91: Hoare triple {53848#false} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 92: Hoare triple {53848#false} ~n := #in~n; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 93: Hoare triple {53848#false} assume ~n <= 0;#res := 1; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 94: Hoare triple {53848#false} assume true; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L276 TraceCheckUtils]: 95: Hoare quadruple {53848#false} {53848#false} #117#return; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 96: Hoare triple {53848#false} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L264 TraceCheckUtils]: 97: Hoare triple {53848#false} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 98: Hoare triple {53848#false} ~n := #in~n; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 99: Hoare triple {53848#false} assume ~n <= 0;#res := 1; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 100: Hoare triple {53848#false} assume true; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L276 TraceCheckUtils]: 101: Hoare quadruple {53848#false} {53848#false} #119#return; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 102: Hoare triple {53848#false} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L281 TraceCheckUtils]: 103: Hoare triple {53848#false} assume !(binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647); {53848#false} is VALID [2021-09-14 00:14:44,789 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 75 proven. 0 refuted. 0 times theorem prover too weak. 129 trivial. 0 not checked. [2021-09-14 00:14:44,789 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2021-09-14 00:14:44,790 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:14:44,790 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1493912771] [2021-09-14 00:14:44,790 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:14:44,790 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1377489616] [2021-09-14 00:14:44,790 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1377489616] provided 1 perfect and 0 imperfect interpolant sequences [2021-09-14 00:14:44,790 INFO L186 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2021-09-14 00:14:44,790 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2021-09-14 00:14:44,790 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1946487433] [2021-09-14 00:14:44,790 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 104 [2021-09-14 00:14:44,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:14:44,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2021-09-14 00:14:44,845 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:44,845 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2021-09-14 00:14:44,845 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:14:44,845 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2021-09-14 00:14:44,845 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2021-09-14 00:14:44,846 INFO L87 Difference]: Start difference. First operand 591 states and 748 transitions. Second operand has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2021-09-14 00:14:45,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:45,965 INFO L93 Difference]: Finished difference Result 980 states and 1242 transitions. [2021-09-14 00:14:45,965 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2021-09-14 00:14:45,965 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 104 [2021-09-14 00:14:45,965 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2021-09-14 00:14:45,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2021-09-14 00:14:45,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 194 transitions. [2021-09-14 00:14:45,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2021-09-14 00:14:45,967 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 194 transitions. [2021-09-14 00:14:45,968 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 194 transitions. [2021-09-14 00:14:46,130 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2021-09-14 00:14:46,142 INFO L225 Difference]: With dead ends: 980 [2021-09-14 00:14:46,142 INFO L226 Difference]: Without dead ends: 525 [2021-09-14 00:14:46,143 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 99 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 22.78ms TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2021-09-14 00:14:46,144 INFO L928 BasicCegarLoop]: 29 mSDtfsCounter, 70 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 215.14ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 86 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 1.31ms SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 216.15ms IncrementalHoareTripleChecker+Time [2021-09-14 00:14:46,144 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 86 Invalid, 272 Unknown, 0 Unchecked, 1.31ms Time], IncrementalHoareTripleChecker [4 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 216.15ms Time] [2021-09-14 00:14:46,144 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 525 states. [2021-09-14 00:14:46,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 525 to 523. [2021-09-14 00:14:46,728 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2021-09-14 00:14:46,728 INFO L82 GeneralOperation]: Start isEquivalent. First operand 525 states. Second operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) [2021-09-14 00:14:46,729 INFO L74 IsIncluded]: Start isIncluded. First operand 525 states. Second operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) [2021-09-14 00:14:46,729 INFO L87 Difference]: Start difference. First operand 525 states. Second operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) [2021-09-14 00:14:46,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:46,748 INFO L93 Difference]: Finished difference Result 525 states and 645 transitions. [2021-09-14 00:14:46,748 INFO L276 IsEmpty]: Start isEmpty. Operand 525 states and 645 transitions. [2021-09-14 00:14:46,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:46,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:46,751 INFO L74 IsIncluded]: Start isIncluded. First operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) Second operand 525 states. [2021-09-14 00:14:46,751 INFO L87 Difference]: Start difference. First operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) Second operand 525 states. [2021-09-14 00:14:46,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2021-09-14 00:14:46,762 INFO L93 Difference]: Finished difference Result 525 states and 645 transitions. [2021-09-14 00:14:46,762 INFO L276 IsEmpty]: Start isEmpty. Operand 525 states and 645 transitions. [2021-09-14 00:14:46,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2021-09-14 00:14:46,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2021-09-14 00:14:46,763 INFO L88 GeneralOperation]: Finished isEquivalent. [2021-09-14 00:14:46,763 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2021-09-14 00:14:46,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 523 states, 416 states have (on average 1.1394230769230769) internal successors, (474), 417 states have internal predecessors, (474), 69 states have call successors, (69), 23 states have call predecessors, (69), 30 states have return successors, (102), 82 states have call predecessors, (102), 69 states have call successors, (102) [2021-09-14 00:14:46,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 523 states to 523 states and 645 transitions. [2021-09-14 00:14:46,775 INFO L78 Accepts]: Start accepts. Automaton has 523 states and 645 transitions. Word has length 104 [2021-09-14 00:14:46,775 INFO L84 Accepts]: Finished accepts. word is rejected. [2021-09-14 00:14:46,775 INFO L470 AbstractCegarLoop]: Abstraction has 523 states and 645 transitions. [2021-09-14 00:14:46,775 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2021-09-14 00:14:46,775 INFO L276 IsEmpty]: Start isEmpty. Operand 523 states and 645 transitions. [2021-09-14 00:14:46,776 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2021-09-14 00:14:46,776 INFO L505 BasicCegarLoop]: Found error trace [2021-09-14 00:14:46,776 INFO L513 BasicCegarLoop]: trace histogram [11, 10, 7, 4, 4, 4, 4, 4, 4, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2021-09-14 00:14:46,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2021-09-14 00:14:46,986 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable32 [2021-09-14 00:14:46,987 INFO L402 AbstractCegarLoop]: === Iteration 34 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 17 more)] === [2021-09-14 00:14:46,987 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2021-09-14 00:14:46,987 INFO L82 PathProgramCache]: Analyzing trace with hash 820662419, now seen corresponding path program 1 times [2021-09-14 00:14:46,987 INFO L121 FreeRefinementEngine]: Executing refinement strategy CAMEL [2021-09-14 00:14:46,987 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1013146675] [2021-09-14 00:14:46,987 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:46,988 INFO L128 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2021-09-14 00:14:46,991 ERROR L247 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2021-09-14 00:14:46,991 INFO L332 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [467657192] [2021-09-14 00:14:46,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2021-09-14 00:14:46,991 INFO L170 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2021-09-14 00:14:46,991 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2021-09-14 00:14:46,992 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2021-09-14 00:14:46,999 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2021-09-14 00:14:47,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:47,039 INFO L263 TraceCheckSpWp]: Trace formula consists of 245 conjuncts, 33 conjunts are in the unsatisfiable core [2021-09-14 00:14:47,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2021-09-14 00:14:47,053 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2021-09-14 00:14:54,645 INFO L281 TraceCheckUtils]: 0: Hoare triple {57061#true} havoc main_#res;havoc main_#t~nondet4, main_#t~nondet5, main_#t~nondet6, main_#t~ret9, main_#t~ret10, main_#t~post8, main_~k~0, main_#t~post7, main_~n~0, main_~x~0, main_~y~0, main_~z~0;assume -2147483648 <= main_#t~nondet4 && main_#t~nondet4 <= 2147483647;main_~x~0 := main_#t~nondet4;havoc main_#t~nondet4; {57061#true} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 1: Hoare triple {57061#true} assume !(main_~x~0 < 0);assume -2147483648 <= main_#t~nondet5 && main_#t~nondet5 <= 2147483647;main_~y~0 := main_#t~nondet5;havoc main_#t~nondet5; {57061#true} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 2: Hoare triple {57061#true} assume !(main_~y~0 < 0);assume -2147483648 <= main_#t~nondet6 && main_#t~nondet6 <= 2147483647;main_~z~0 := main_#t~nondet6;havoc main_#t~nondet6;main_~n~0 := 0; {57061#true} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 3: Hoare triple {57061#true} assume !!(main_~n~0 <= main_~x~0);main_~k~0 := 0; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 4: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume !!(main_~k~0 <= main_~x~0); {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 5: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume main_~k~0 <= main_~n~0;binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~n~0, main_~k~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,646 INFO L264 TraceCheckUtils]: 6: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {57061#true} is VALID [2021-09-14 00:14:54,646 INFO L281 TraceCheckUtils]: 7: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,647 INFO L281 TraceCheckUtils]: 8: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,647 INFO L281 TraceCheckUtils]: 9: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,647 INFO L276 TraceCheckUtils]: 10: Hoare quadruple {57061#true} {57075#(= ULTIMATE.start_main_~k~0 0)} #111#return; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,647 INFO L281 TraceCheckUtils]: 11: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,647 INFO L264 TraceCheckUtils]: 12: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {57061#true} is VALID [2021-09-14 00:14:54,647 INFO L281 TraceCheckUtils]: 13: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,647 INFO L281 TraceCheckUtils]: 14: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,648 INFO L281 TraceCheckUtils]: 15: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,648 INFO L276 TraceCheckUtils]: 16: Hoare quadruple {57061#true} {57075#(= ULTIMATE.start_main_~k~0 0)} #113#return; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,648 INFO L281 TraceCheckUtils]: 17: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,648 INFO L281 TraceCheckUtils]: 18: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,649 INFO L281 TraceCheckUtils]: 19: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,649 INFO L264 TraceCheckUtils]: 20: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {57061#true} is VALID [2021-09-14 00:14:54,649 INFO L281 TraceCheckUtils]: 21: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,649 INFO L281 TraceCheckUtils]: 22: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,649 INFO L281 TraceCheckUtils]: 23: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,649 INFO L276 TraceCheckUtils]: 24: Hoare quadruple {57061#true} {57075#(= ULTIMATE.start_main_~k~0 0)} #115#return; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,650 INFO L281 TraceCheckUtils]: 25: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,650 INFO L281 TraceCheckUtils]: 26: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,650 INFO L281 TraceCheckUtils]: 27: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,650 INFO L281 TraceCheckUtils]: 28: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,651 INFO L281 TraceCheckUtils]: 29: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,651 INFO L281 TraceCheckUtils]: 30: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} main_#t~ret9 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret9 && main_#t~ret9 <= 2147483647;havoc main_#t~ret9; {57075#(= ULTIMATE.start_main_~k~0 0)} is VALID [2021-09-14 00:14:54,651 INFO L281 TraceCheckUtils]: 31: Hoare triple {57075#(= ULTIMATE.start_main_~k~0 0)} main_#t~post8 := main_~k~0; {57160#(= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:14:54,651 INFO L281 TraceCheckUtils]: 32: Hoare triple {57160#(= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 <= 2147483647; {57160#(= |ULTIMATE.start_main_#t~post8| 0)} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 33: Hoare triple {57160#(= |ULTIMATE.start_main_#t~post8| 0)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 34: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume !!(main_~k~0 <= main_~x~0); {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 35: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,652 INFO L264 TraceCheckUtils]: 36: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {57061#true} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 37: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 38: Hoare triple {57061#true} assume !(~n <= 0); {57061#true} is VALID [2021-09-14 00:14:54,652 INFO L281 TraceCheckUtils]: 39: Hoare triple {57061#true} assume ~n - 1 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 40: Hoare triple {57061#true} assume ~n - 1 >= -2147483648; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L264 TraceCheckUtils]: 41: Hoare triple {57061#true} call #t~ret0 := fact(~n - 1); {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 42: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 43: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 44: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L276 TraceCheckUtils]: 45: Hoare quadruple {57061#true} {57061#true} #109#return; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 46: Hoare triple {57061#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 47: Hoare triple {57061#true} assume ~n * #t~ret0 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 48: Hoare triple {57061#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {57061#true} is VALID [2021-09-14 00:14:54,653 INFO L281 TraceCheckUtils]: 49: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,660 INFO L276 TraceCheckUtils]: 50: Hoare quadruple {57061#true} {57167#(= ULTIMATE.start_main_~k~0 1)} #117#return; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,660 INFO L281 TraceCheckUtils]: 51: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume -2147483648 <= binomialCoefficient_#t~ret1 && binomialCoefficient_#t~ret1 <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,660 INFO L264 TraceCheckUtils]: 52: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} call binomialCoefficient_#t~ret2 := fact(binomialCoefficient_~k); {57061#true} is VALID [2021-09-14 00:14:54,660 INFO L281 TraceCheckUtils]: 53: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,660 INFO L281 TraceCheckUtils]: 54: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,661 INFO L281 TraceCheckUtils]: 55: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,661 INFO L276 TraceCheckUtils]: 56: Hoare quadruple {57061#true} {57167#(= ULTIMATE.start_main_~k~0 1)} #119#return; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,661 INFO L281 TraceCheckUtils]: 57: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume -2147483648 <= binomialCoefficient_#t~ret2 && binomialCoefficient_#t~ret2 <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,661 INFO L281 TraceCheckUtils]: 58: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume binomialCoefficient_~n - binomialCoefficient_~k <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 59: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume binomialCoefficient_~n - binomialCoefficient_~k >= -2147483648; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,662 INFO L264 TraceCheckUtils]: 60: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} call binomialCoefficient_#t~ret3 := fact(binomialCoefficient_~n - binomialCoefficient_~k); {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 61: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 62: Hoare triple {57061#true} assume !(~n <= 0); {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 63: Hoare triple {57061#true} assume ~n - 1 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 64: Hoare triple {57061#true} assume ~n - 1 >= -2147483648; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L264 TraceCheckUtils]: 65: Hoare triple {57061#true} call #t~ret0 := fact(~n - 1); {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 66: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 67: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 68: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L276 TraceCheckUtils]: 69: Hoare quadruple {57061#true} {57061#true} #109#return; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 70: Hoare triple {57061#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,662 INFO L281 TraceCheckUtils]: 71: Hoare triple {57061#true} assume ~n * #t~ret0 <= 2147483647; {57061#true} is VALID [2021-09-14 00:14:54,663 INFO L281 TraceCheckUtils]: 72: Hoare triple {57061#true} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {57061#true} is VALID [2021-09-14 00:14:54,663 INFO L281 TraceCheckUtils]: 73: Hoare triple {57061#true} assume true; {57061#true} is VALID [2021-09-14 00:14:54,663 INFO L276 TraceCheckUtils]: 74: Hoare quadruple {57061#true} {57167#(= ULTIMATE.start_main_~k~0 1)} #121#return; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,663 INFO L281 TraceCheckUtils]: 75: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume -2147483648 <= binomialCoefficient_#t~ret3 && binomialCoefficient_#t~ret3 <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,664 INFO L281 TraceCheckUtils]: 76: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,664 INFO L281 TraceCheckUtils]: 77: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 >= -2147483648; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,664 INFO L281 TraceCheckUtils]: 78: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) <= 2147483647; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,665 INFO L281 TraceCheckUtils]: 79: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} assume (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) >= -2147483648;binomialCoefficient_#res := (if binomialCoefficient_#t~ret1 < 0 && 0 != binomialCoefficient_#t~ret1 % (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) then (if binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3 < 0 then binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3) - 1 else 1 + binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3)) else binomialCoefficient_#t~ret1 / (binomialCoefficient_#t~ret2 * binomialCoefficient_#t~ret3));havoc binomialCoefficient_#t~ret1;havoc binomialCoefficient_#t~ret2;havoc binomialCoefficient_#t~ret3; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,665 INFO L281 TraceCheckUtils]: 80: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} main_#t~ret10 := binomialCoefficient_#res;assume -2147483648 <= main_#t~ret10 && main_#t~ret10 <= 2147483647;havoc main_#t~ret10; {57167#(= ULTIMATE.start_main_~k~0 1)} is VALID [2021-09-14 00:14:54,665 INFO L281 TraceCheckUtils]: 81: Hoare triple {57167#(= ULTIMATE.start_main_~k~0 1)} main_#t~post8 := main_~k~0; {57312#(= |ULTIMATE.start_main_#t~post8| 1)} is VALID [2021-09-14 00:14:54,665 INFO L281 TraceCheckUtils]: 82: Hoare triple {57312#(= |ULTIMATE.start_main_#t~post8| 1)} assume 1 + main_#t~post8 <= 2147483647; {57312#(= |ULTIMATE.start_main_#t~post8| 1)} is VALID [2021-09-14 00:14:54,666 INFO L281 TraceCheckUtils]: 83: Hoare triple {57312#(= |ULTIMATE.start_main_#t~post8| 1)} assume 1 + main_#t~post8 >= -2147483648;main_~k~0 := 1 + main_#t~post8;havoc main_#t~post8; {57319#(= ULTIMATE.start_main_~k~0 2)} is VALID [2021-09-14 00:14:54,666 INFO L281 TraceCheckUtils]: 84: Hoare triple {57319#(= ULTIMATE.start_main_~k~0 2)} assume !!(main_~k~0 <= main_~x~0); {57319#(= ULTIMATE.start_main_~k~0 2)} is VALID [2021-09-14 00:14:54,666 INFO L281 TraceCheckUtils]: 85: Hoare triple {57319#(= ULTIMATE.start_main_~k~0 2)} assume !(main_~k~0 <= main_~n~0);binomialCoefficient_#in~n, binomialCoefficient_#in~k := main_~k~0, main_~n~0;havoc binomialCoefficient_#res;havoc binomialCoefficient_#t~ret1, binomialCoefficient_#t~ret2, binomialCoefficient_#t~ret3, binomialCoefficient_~n, binomialCoefficient_~k;binomialCoefficient_~n := binomialCoefficient_#in~n;binomialCoefficient_~k := binomialCoefficient_#in~k; {57326#(= ULTIMATE.start_binomialCoefficient_~n 2)} is VALID [2021-09-14 00:14:54,667 INFO L264 TraceCheckUtils]: 86: Hoare triple {57326#(= ULTIMATE.start_binomialCoefficient_~n 2)} call binomialCoefficient_#t~ret1 := fact(binomialCoefficient_~n); {57330#(= 2 |fact_#in~n|)} is VALID [2021-09-14 00:14:54,667 INFO L281 TraceCheckUtils]: 87: Hoare triple {57330#(= 2 |fact_#in~n|)} ~n := #in~n; {57334#(= fact_~n 2)} is VALID [2021-09-14 00:14:54,667 INFO L281 TraceCheckUtils]: 88: Hoare triple {57334#(= fact_~n 2)} assume !(~n <= 0); {57334#(= fact_~n 2)} is VALID [2021-09-14 00:14:54,667 INFO L281 TraceCheckUtils]: 89: Hoare triple {57334#(= fact_~n 2)} assume ~n - 1 <= 2147483647; {57334#(= fact_~n 2)} is VALID [2021-09-14 00:14:54,668 INFO L281 TraceCheckUtils]: 90: Hoare triple {57334#(= fact_~n 2)} assume ~n - 1 >= -2147483648; {57334#(= fact_~n 2)} is VALID [2021-09-14 00:14:54,668 INFO L264 TraceCheckUtils]: 91: Hoare triple {57334#(= fact_~n 2)} call #t~ret0 := fact(~n - 1); {57061#true} is VALID [2021-09-14 00:14:54,668 INFO L281 TraceCheckUtils]: 92: Hoare triple {57061#true} ~n := #in~n; {57350#(= fact_~n |fact_#in~n|)} is VALID [2021-09-14 00:14:54,668 INFO L281 TraceCheckUtils]: 93: Hoare triple {57350#(= fact_~n |fact_#in~n|)} assume !(~n <= 0); {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:54,669 INFO L281 TraceCheckUtils]: 94: Hoare triple {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} assume ~n - 1 <= 2147483647; {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:54,669 INFO L281 TraceCheckUtils]: 95: Hoare triple {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} assume ~n - 1 >= -2147483648; {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:54,669 INFO L264 TraceCheckUtils]: 96: Hoare triple {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} call #t~ret0 := fact(~n - 1); {57061#true} is VALID [2021-09-14 00:14:54,669 INFO L281 TraceCheckUtils]: 97: Hoare triple {57061#true} ~n := #in~n; {57061#true} is VALID [2021-09-14 00:14:54,669 INFO L281 TraceCheckUtils]: 98: Hoare triple {57061#true} assume ~n <= 0;#res := 1; {57370#(<= |fact_#res| 1)} is VALID [2021-09-14 00:14:54,670 INFO L281 TraceCheckUtils]: 99: Hoare triple {57370#(<= |fact_#res| 1)} assume true; {57370#(<= |fact_#res| 1)} is VALID [2021-09-14 00:14:54,670 INFO L276 TraceCheckUtils]: 100: Hoare quadruple {57370#(<= |fact_#res| 1)} {57354#(and (< 0 fact_~n) (= fact_~n |fact_#in~n|))} #109#return; {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:54,670 INFO L281 TraceCheckUtils]: 101: Hoare triple {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:54,671 INFO L281 TraceCheckUtils]: 102: Hoare triple {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} assume ~n * #t~ret0 <= 2147483647; {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} is VALID [2021-09-14 00:14:56,673 INFO L281 TraceCheckUtils]: 103: Hoare triple {57377#(and (<= |fact_#t~ret0| 1) (< 0 fact_~n) (= fact_~n |fact_#in~n|))} assume ~n * #t~ret0 >= -2147483648;#res := ~n * #t~ret0;havoc #t~ret0; {57387#(and (<= (div |fact_#res| |fact_#in~n|) 1) (= (mod |fact_#res| |fact_#in~n|) 0) (< 0 |fact_#in~n|))} is UNKNOWN [2021-09-14 00:14:56,673 INFO L281 TraceCheckUtils]: 104: Hoare triple {57387#(and (<= (div |fact_#res| |fact_#in~n|) 1) (= (mod |fact_#res| |fact_#in~n|) 0) (< 0 |fact_#in~n|))} assume true; {57387#(and (<= (div |fact_#res| |fact_#in~n|) 1) (= (mod |fact_#res| |fact_#in~n|) 0) (< 0 |fact_#in~n|))} is VALID [2021-09-14 00:14:56,674 INFO L276 TraceCheckUtils]: 105: Hoare quadruple {57387#(and (<= (div |fact_#res| |fact_#in~n|) 1) (= (mod |fact_#res| |fact_#in~n|) 0) (< 0 |fact_#in~n|))} {57334#(= fact_~n 2)} #109#return; {57394#(and (<= (div |fact_#t~ret0| (+ (- 1) fact_~n)) 1) (= fact_~n 2))} is VALID [2021-09-14 00:14:56,674 INFO L281 TraceCheckUtils]: 106: Hoare triple {57394#(and (<= (div |fact_#t~ret0| (+ (- 1) fact_~n)) 1) (= fact_~n 2))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {57394#(and (<= (div |fact_#t~ret0| (+ (- 1) fact_~n)) 1) (= fact_~n 2))} is VALID [2021-09-14 00:14:56,675 INFO L281 TraceCheckUtils]: 107: Hoare triple {57394#(and (<= (div |fact_#t~ret0| (+ (- 1) fact_~n)) 1) (= fact_~n 2))} assume !(~n * #t~ret0 <= 2147483647); {57062#false} is VALID [2021-09-14 00:14:56,675 INFO L134 CoverageAnalysis]: Checked inductivity of 243 backedges. 78 proven. 22 refuted. 0 times theorem prover too weak. 143 trivial. 0 not checked. [2021-09-14 00:14:56,675 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2021-09-14 00:15:01,938 WARN L870 TransFormulaUtils]: predicate-based correctness check returned UNKNOWN, hence correctness of interprocedural sequential composition was not checked. [2021-09-14 00:15:02,021 INFO L139 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2021-09-14 00:15:02,021 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1013146675] [2021-09-14 00:15:02,021 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2021-09-14 00:15:02,021 INFO L332 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [467657192] [2021-09-14 00:15:02,021 INFO L160 FreeRefinementEngine]: IpTcStrategyModuleZ3 [467657192] provided 0 perfect and 1 imperfect interpolant sequences [2021-09-14 00:15:02,021 INFO L186 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2021-09-14 00:15:02,021 INFO L199 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2021-09-14 00:15:02,021 INFO L115 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [95646156] [2021-09-14 00:15:02,022 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 4.357142857142857) internal successors, (61), 15 states have internal predecessors, (61), 6 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 108 [2021-09-14 00:15:02,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2021-09-14 00:15:02,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 14 states have (on average 4.357142857142857) internal successors, (61), 15 states have internal predecessors, (61), 6 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2021-09-14 00:15:04,094 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 79 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2021-09-14 00:15:04,094 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2021-09-14 00:15:04,094 INFO L103 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2021-09-14 00:15:04,094 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2021-09-14 00:15:04,094 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=266, Unknown=0, NotChecked=0, Total=306 [2021-09-14 00:15:04,095 INFO L87 Difference]: Start difference. First operand 523 states and 645 transitions. Second operand has 16 states, 14 states have (on average 4.357142857142857) internal successors, (61), 15 states have internal predecessors, (61), 6 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2021-09-14 00:15:08,433 WARN L515 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2021-09-14 00:15:08,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2021-09-14 00:15:08,436 INFO L927 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 362.77ms TimeCoverageRelationStatistics Valid=89, Invalid=561, Unknown=0, NotChecked=0, Total=650 [2021-09-14 00:15:08,436 INFO L928 BasicCegarLoop]: 12 mSDtfsCounter, 46 mSDsluCounter, 481 mSDsCounter, 0 mSdLazyCounter, 1000 mSolverCounterSat, 17 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2923.56ms Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 1018 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 3.27ms SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 1000 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2927.83ms IncrementalHoareTripleChecker+Time [2021-09-14 00:15:08,436 INFO L929 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 102 Invalid, 1018 Unknown, 0 Unchecked, 3.27ms Time], IncrementalHoareTripleChecker [17 Valid, 1000 Invalid, 1 Unknown, 0 Unchecked, 2927.83ms Time] [2021-09-14 00:15:08,452 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Ended with exit code 0 [2021-09-14 00:15:08,637 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2021-09-14 00:15:08,637 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.IllegalStateException: ManagedScript already locked by de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker@4cacfbde at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.ManagedScript.lock(ManagedScript.java:81) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.MonolithicHoareTripleChecker.isInductive(MonolithicHoareTripleChecker.java:182) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.MonolithicHoareTripleChecker.isInductive(MonolithicHoareTripleChecker.java:164) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.MonolithicHoareTripleChecker.checkInternal(MonolithicHoareTripleChecker.java:91) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.ChainingHoareTripleChecker$ReviewedProtectedHtc.reviewInductiveInternal(ChainingHoareTripleChecker.java:318) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.ChainingHoareTripleChecker$ReviewedProtectedHtc.checkInternal(ChainingHoareTripleChecker.java:290) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.ChainingHoareTripleChecker.checkInternal(ChainingHoareTripleChecker.java:98) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.CachingHoareTripleChecker.checkInternal(CachingHoareTripleChecker.java:95) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton$InternalSuccessorComputationHelper.computeSuccWithSolver(AbstractInterpolantAutomaton.java:357) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.DeterministicInterpolantAutomaton.addOtherSuccessors(DeterministicInterpolantAutomaton.java:198) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:78) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:233) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.TotalizeNwa.internalSuccessors(TotalizeNwa.java:213) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ComplementDeterministicNwa.internalSuccessors(ComplementDeterministicNwa.java:121) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:216) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:208) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.addInternalsAndSuccessors(NestedWordAutomatonReachableStates.java:1058) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.(NestedWordAutomatonReachableStates.java:960) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates.(NestedWordAutomatonReachableStates.java:182) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.computeDifference(Difference.java:137) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.(Difference.java:90) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.computeAutomataDifference(BasicCegarLoop.java:863) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.refineAbstraction(BasicCegarLoop.java:779) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.refineAbstractionInternal(AbstractCegarLoop.java:462) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:420) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:330) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:53) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:392) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:303) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:263) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:176) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:155) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2021-09-14 00:15:08,641 INFO L158 Benchmark]: Toolchain (without parser) took 101508.93ms. Allocated memory was 69.2MB in the beginning and 121.6MB in the end (delta: 52.4MB). Free memory was 52.4MB in the beginning and 97.3MB in the end (delta: -45.0MB). Peak memory consumption was 74.2MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 69.2MB. Free memory was 51.5MB in the beginning and 51.4MB in the end (delta: 94.5kB). There was no memory consumed. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: CACSL2BoogieTranslator took 150.34ms. Allocated memory is still 69.2MB. Free memory was 52.2MB in the beginning and 43.0MB in the end (delta: 9.2MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: Boogie Procedure Inliner took 36.40ms. Allocated memory is still 69.2MB. Free memory was 42.8MB in the beginning and 40.8MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: Boogie Preprocessor took 60.11ms. Allocated memory is still 69.2MB. Free memory was 40.8MB in the beginning and 52.2MB in the end (delta: -11.4MB). Peak memory consumption was 3.0MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: RCFGBuilder took 312.62ms. Allocated memory is still 69.2MB. Free memory was 52.2MB in the beginning and 38.2MB in the end (delta: 14.0MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,642 INFO L158 Benchmark]: TraceAbstraction took 100943.79ms. Allocated memory was 69.2MB in the beginning and 121.6MB in the end (delta: 52.4MB). Free memory was 37.6MB in the beginning and 97.3MB in the end (delta: -59.8MB). Peak memory consumption was 58.7MB. Max. memory is 16.1GB. [2021-09-14 00:15:08,643 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16ms. Allocated memory is still 69.2MB. Free memory was 51.5MB in the beginning and 51.4MB in the end (delta: 94.5kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 150.34ms. Allocated memory is still 69.2MB. Free memory was 52.2MB in the beginning and 43.0MB in the end (delta: 9.2MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 36.40ms. Allocated memory is still 69.2MB. Free memory was 42.8MB in the beginning and 40.8MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 60.11ms. Allocated memory is still 69.2MB. Free memory was 40.8MB in the beginning and 52.2MB in the end (delta: -11.4MB). Peak memory consumption was 3.0MB. Max. memory is 16.1GB. * RCFGBuilder took 312.62ms. Allocated memory is still 69.2MB. Free memory was 52.2MB in the beginning and 38.2MB in the end (delta: 14.0MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * TraceAbstraction took 100943.79ms. Allocated memory was 69.2MB in the beginning and 121.6MB in the end (delta: 52.4MB). Free memory was 37.6MB in the beginning and 97.3MB in the end (delta: -59.8MB). Peak memory consumption was 58.7MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: IllegalStateException: ManagedScript already locked by de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker@4cacfbde de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: IllegalStateException: ManagedScript already locked by de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker@4cacfbde: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.ManagedScript.lock(ManagedScript.java:81) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2021-09-14 00:15:08,691 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...