./Ultimate.py --spec ../sv-benchmarks/c/properties/no-overflow.prp --file ../sv-benchmarks/c/termination-numeric/TerminatorRec02.c --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- Checking for overflows Using default analysis Version 03d7b7b3 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/TerminatorRec02.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 744c3d26555bbd53a7a0d9e7c64efe010ba06d0f67ec9ca21eb74ed1148222d3 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-21 03:06:23,044 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-21 03:06:23,047 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-21 03:06:23,082 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-21 03:06:23,082 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-21 03:06:23,086 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-21 03:06:23,087 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-21 03:06:23,090 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-21 03:06:23,092 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-21 03:06:23,095 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-21 03:06:23,096 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-21 03:06:23,098 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-21 03:06:23,098 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-21 03:06:23,100 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-21 03:06:23,101 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-21 03:06:23,102 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-21 03:06:23,103 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-21 03:06:23,104 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-21 03:06:23,106 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-21 03:06:23,107 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-21 03:06:23,108 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-21 03:06:23,109 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-21 03:06:23,110 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-21 03:06:23,111 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-21 03:06:23,118 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-21 03:06:23,119 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-21 03:06:23,119 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-21 03:06:23,120 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-21 03:06:23,121 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-21 03:06:23,122 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-21 03:06:23,122 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-21 03:06:23,123 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-21 03:06:23,124 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-21 03:06:23,125 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-21 03:06:23,126 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-21 03:06:23,126 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-21 03:06:23,127 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-21 03:06:23,127 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-21 03:06:23,127 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-21 03:06:23,128 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-21 03:06:23,128 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-21 03:06:23,129 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Overflow-64bit-Automizer_Default.epf [2022-02-21 03:06:23,161 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-21 03:06:23,161 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-21 03:06:23,162 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-21 03:06:23,162 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-21 03:06:23,163 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-21 03:06:23,163 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-21 03:06:23,163 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-21 03:06:23,164 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-21 03:06:23,164 INFO L138 SettingsManager]: * Use SBE=true [2022-02-21 03:06:23,164 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-21 03:06:23,165 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-21 03:06:23,165 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-21 03:06:23,165 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-21 03:06:23,165 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-21 03:06:23,166 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-21 03:06:23,166 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-21 03:06:23,166 INFO L138 SettingsManager]: * Check absence of signed integer overflows=true [2022-02-21 03:06:23,166 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-21 03:06:23,166 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-21 03:06:23,167 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-21 03:06:23,167 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-21 03:06:23,167 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-21 03:06:23,167 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-21 03:06:23,167 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:06:23,168 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-21 03:06:23,168 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-21 03:06:23,168 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-21 03:06:23,168 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-21 03:06:23,168 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-21 03:06:23,169 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-21 03:06:23,169 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 -> 744c3d26555bbd53a7a0d9e7c64efe010ba06d0f67ec9ca21eb74ed1148222d3 [2022-02-21 03:06:23,384 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-21 03:06:23,415 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-21 03:06:23,417 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-21 03:06:23,418 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-21 03:06:23,419 INFO L275 PluginConnector]: CDTParser initialized [2022-02-21 03:06:23,420 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/TerminatorRec02.c [2022-02-21 03:06:23,483 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/77ec3d69e/0a8722a5602747b0b9cd917c4d9783bb/FLAG674a1f241 [2022-02-21 03:06:23,906 INFO L306 CDTParser]: Found 1 translation units. [2022-02-21 03:06:23,907 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-numeric/TerminatorRec02.c [2022-02-21 03:06:23,917 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/77ec3d69e/0a8722a5602747b0b9cd917c4d9783bb/FLAG674a1f241 [2022-02-21 03:06:23,941 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/77ec3d69e/0a8722a5602747b0b9cd917c4d9783bb [2022-02-21 03:06:23,943 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-21 03:06:23,945 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-21 03:06:23,948 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-21 03:06:23,948 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-21 03:06:23,951 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-21 03:06:23,952 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:06:23" (1/1) ... [2022-02-21 03:06:23,953 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3a4b4609 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:23, skipping insertion in model container [2022-02-21 03:06:23,953 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:06:23" (1/1) ... [2022-02-21 03:06:23,959 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-21 03:06:23,970 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-21 03:06:24,141 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:06:24,151 INFO L203 MainTranslator]: Completed pre-run [2022-02-21 03:06:24,169 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:06:24,179 INFO L208 MainTranslator]: Completed translation [2022-02-21 03:06:24,180 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24 WrapperNode [2022-02-21 03:06:24,181 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-21 03:06:24,182 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-21 03:06:24,182 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-21 03:06:24,182 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-21 03:06:24,189 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,193 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,210 INFO L137 Inliner]: procedures = 5, calls = 4, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 20 [2022-02-21 03:06:24,211 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-21 03:06:24,212 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-21 03:06:24,212 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-21 03:06:24,212 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-21 03:06:24,219 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,219 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,220 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,221 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,224 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,227 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,230 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,231 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-21 03:06:24,232 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-21 03:06:24,232 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-21 03:06:24,232 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-21 03:06:24,234 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (1/1) ... [2022-02-21 03:06:24,239 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:06:24,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:24,264 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) [2022-02-21 03:06:24,292 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 [2022-02-21 03:06:24,307 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2022-02-21 03:06:24,308 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2022-02-21 03:06:24,308 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-21 03:06:24,309 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-21 03:06:24,353 INFO L234 CfgBuilder]: Building ICFG [2022-02-21 03:06:24,355 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-21 03:06:24,553 INFO L275 CfgBuilder]: Performing block encoding [2022-02-21 03:06:24,573 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-21 03:06:24,574 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-02-21 03:06:24,575 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:06:24 BoogieIcfgContainer [2022-02-21 03:06:24,575 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-21 03:06:24,577 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-21 03:06:24,577 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-21 03:06:24,593 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-21 03:06:24,594 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.02 03:06:23" (1/3) ... [2022-02-21 03:06:24,594 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@24f91bcb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:06:24, skipping insertion in model container [2022-02-21 03:06:24,595 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:06:24" (2/3) ... [2022-02-21 03:06:24,595 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@24f91bcb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:06:24, skipping insertion in model container [2022-02-21 03:06:24,595 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:06:24" (3/3) ... [2022-02-21 03:06:24,597 INFO L111 eAbstractionObserver]: Analyzing ICFG TerminatorRec02.c [2022-02-21 03:06:24,601 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-21 03:06:24,602 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 4 error locations. [2022-02-21 03:06:24,647 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-21 03:06:24,654 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, mAutomataTypeConcurrency=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 [2022-02-21 03:06:24,654 INFO L340 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2022-02-21 03:06:24,675 INFO L276 IsEmpty]: Start isEmpty. Operand has 23 states, 15 states have (on average 1.4666666666666666) internal successors, (22), 19 states have internal predecessors, (22), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:24,678 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-21 03:06:24,679 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:24,679 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:24,680 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:24,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:24,685 INFO L85 PathProgramCache]: Analyzing trace with hash -211694171, now seen corresponding path program 1 times [2022-02-21 03:06:24,692 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:24,693 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605403036] [2022-02-21 03:06:24,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:24,694 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:24,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:24,887 INFO L290 TraceCheckUtils]: 0: Hoare triple {26#true} assume { :begin_inline_ULTIMATE.init } true; {26#true} is VALID [2022-02-21 03:06:24,888 INFO L290 TraceCheckUtils]: 1: Hoare triple {26#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:24,889 INFO L290 TraceCheckUtils]: 2: Hoare triple {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:24,890 INFO L290 TraceCheckUtils]: 3: Hoare triple {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:24,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {28#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} call main_#t~ret4#1 := fact(main_~x~0#1); {29#(<= |fact_#in~x| 2147483647)} is VALID [2022-02-21 03:06:24,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {29#(<= |fact_#in~x| 2147483647)} ~x := #in~x; {30#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:24,892 INFO L290 TraceCheckUtils]: 6: Hoare triple {30#(<= fact_~x 2147483647)} assume ~x > 1; {30#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:24,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {30#(<= fact_~x 2147483647)} assume !(~x - 1 <= 2147483647); {27#false} is VALID [2022-02-21 03:06:24,894 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:06:24,895 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:24,895 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [605403036] [2022-02-21 03:06:24,895 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [605403036] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:06:24,896 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:06:24,896 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:06:24,897 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1043725739] [2022-02-21 03:06:24,898 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:06:24,902 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 8 [2022-02-21 03:06:24,903 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:24,905 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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) [2022-02-21 03:06:24,916 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:24,917 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:06:24,917 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:24,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:06:24,940 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:06:24,942 INFO L87 Difference]: Start difference. First operand has 23 states, 15 states have (on average 1.4666666666666666) internal successors, (22), 19 states have internal predecessors, (22), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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) [2022-02-21 03:06:25,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,133 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2022-02-21 03:06:25,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-21 03:06:25,134 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 8 [2022-02-21 03:06:25,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:25,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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) [2022-02-21 03:06:25,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2022-02-21 03:06:25,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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) [2022-02-21 03:06:25,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2022-02-21 03:06:25,148 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 26 transitions. [2022-02-21 03:06:25,199 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:25,206 INFO L225 Difference]: With dead ends: 23 [2022-02-21 03:06:25,206 INFO L226 Difference]: Without dead ends: 18 [2022-02-21 03:06:25,208 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:06:25,211 INFO L933 BasicCegarLoop]: 11 mSDtfsCounter, 27 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 30 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:25,212 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 30 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:06:25,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2022-02-21 03:06:25,237 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-02-21 03:06:25,237 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:25,238 INFO L82 GeneralOperation]: Start isEquivalent. First operand 18 states. Second operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,239 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,239 INFO L87 Difference]: Start difference. First operand 18 states. Second operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,246 INFO L93 Difference]: Finished difference Result 18 states and 19 transitions. [2022-02-21 03:06:25,246 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 19 transitions. [2022-02-21 03:06:25,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:25,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:25,248 INFO L74 IsIncluded]: Start isIncluded. First operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 18 states. [2022-02-21 03:06:25,248 INFO L87 Difference]: Start difference. First operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 18 states. [2022-02-21 03:06:25,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,252 INFO L93 Difference]: Finished difference Result 18 states and 19 transitions. [2022-02-21 03:06:25,252 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 19 transitions. [2022-02-21 03:06:25,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:25,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:25,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:25,254 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:25,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 1.3333333333333333) internal successors, (16), 15 states have internal predecessors, (16), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 19 transitions. [2022-02-21 03:06:25,258 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 19 transitions. Word has length 8 [2022-02-21 03:06:25,258 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:25,259 INFO L470 AbstractCegarLoop]: Abstraction has 18 states and 19 transitions. [2022-02-21 03:06:25,259 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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) [2022-02-21 03:06:25,259 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 19 transitions. [2022-02-21 03:06:25,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:06:25,260 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:25,261 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:25,261 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-21 03:06:25,262 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:25,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:25,264 INFO L85 PathProgramCache]: Analyzing trace with hash 2027415328, now seen corresponding path program 1 times [2022-02-21 03:06:25,264 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:25,265 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1364008131] [2022-02-21 03:06:25,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:25,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:25,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:25,318 INFO L290 TraceCheckUtils]: 0: Hoare triple {119#true} assume { :begin_inline_ULTIMATE.init } true; {119#true} is VALID [2022-02-21 03:06:25,318 INFO L290 TraceCheckUtils]: 1: Hoare triple {119#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {119#true} is VALID [2022-02-21 03:06:25,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {119#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {119#true} is VALID [2022-02-21 03:06:25,319 INFO L290 TraceCheckUtils]: 3: Hoare triple {119#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {119#true} is VALID [2022-02-21 03:06:25,320 INFO L272 TraceCheckUtils]: 4: Hoare triple {119#true} call main_#t~ret4#1 := fact(main_~x~0#1); {119#true} is VALID [2022-02-21 03:06:25,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {119#true} ~x := #in~x; {119#true} is VALID [2022-02-21 03:06:25,323 INFO L290 TraceCheckUtils]: 6: Hoare triple {119#true} assume ~x > 1; {121#(<= 2 fact_~x)} is VALID [2022-02-21 03:06:25,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {121#(<= 2 fact_~x)} assume ~x - 1 <= 2147483647; {121#(<= 2 fact_~x)} is VALID [2022-02-21 03:06:25,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {121#(<= 2 fact_~x)} assume !(~x - 1 >= -2147483648); {120#false} is VALID [2022-02-21 03:06:25,325 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:06:25,325 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:25,326 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1364008131] [2022-02-21 03:06:25,326 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1364008131] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:06:25,327 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:06:25,332 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:06:25,332 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1040192008] [2022-02-21 03:06:25,332 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:06:25,333 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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 9 [2022-02-21 03:06:25,334 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:25,334 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-02-21 03:06:25,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:25,344 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-21 03:06:25,345 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:25,347 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-21 03:06:25,348 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-21 03:06:25,348 INFO L87 Difference]: Start difference. First operand 18 states and 19 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-02-21 03:06:25,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,386 INFO L93 Difference]: Finished difference Result 20 states and 21 transitions. [2022-02-21 03:06:25,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-21 03:06:25,386 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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 9 [2022-02-21 03:06:25,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:25,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-02-21 03:06:25,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2022-02-21 03:06:25,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-02-21 03:06:25,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2022-02-21 03:06:25,390 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 21 transitions. [2022-02-21 03:06:25,413 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:25,415 INFO L225 Difference]: With dead ends: 20 [2022-02-21 03:06:25,415 INFO L226 Difference]: Without dead ends: 19 [2022-02-21 03:06:25,415 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-21 03:06:25,421 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 7 mSDsluCounter, 7 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 21 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:25,422 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 21 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:06:25,425 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19 states. [2022-02-21 03:06:25,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19 to 17. [2022-02-21 03:06:25,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:25,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,434 INFO L74 IsIncluded]: Start isIncluded. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,435 INFO L87 Difference]: Start difference. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,437 INFO L93 Difference]: Finished difference Result 19 states and 20 transitions. [2022-02-21 03:06:25,437 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 20 transitions. [2022-02-21 03:06:25,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:25,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:25,438 INFO L74 IsIncluded]: Start isIncluded. First operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-02-21 03:06:25,439 INFO L87 Difference]: Start difference. First operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-02-21 03:06:25,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:25,442 INFO L93 Difference]: Finished difference Result 19 states and 20 transitions. [2022-02-21 03:06:25,442 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 20 transitions. [2022-02-21 03:06:25,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:25,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:25,443 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:25,443 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:25,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 14 states have internal predecessors, (15), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:25,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 18 transitions. [2022-02-21 03:06:25,445 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 18 transitions. Word has length 9 [2022-02-21 03:06:25,445 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:25,445 INFO L470 AbstractCegarLoop]: Abstraction has 17 states and 18 transitions. [2022-02-21 03:06:25,445 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-02-21 03:06:25,446 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 18 transitions. [2022-02-21 03:06:25,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-21 03:06:25,446 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:25,446 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:25,447 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-21 03:06:25,447 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:25,447 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:25,448 INFO L85 PathProgramCache]: Analyzing trace with hash -1905497473, now seen corresponding path program 1 times [2022-02-21 03:06:25,448 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:25,448 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [834882335] [2022-02-21 03:06:25,448 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:25,448 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:25,482 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:06:25,482 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1069807933] [2022-02-21 03:06:25,483 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:25,483 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:25,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:25,485 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) [2022-02-21 03:06:25,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-21 03:06:25,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:25,537 INFO L263 TraceCheckSpWp]: Trace formula consists of 50 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-21 03:06:25,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:25,550 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:06:25,801 INFO L290 TraceCheckUtils]: 0: Hoare triple {205#true} assume { :begin_inline_ULTIMATE.init } true; {205#true} is VALID [2022-02-21 03:06:25,802 INFO L290 TraceCheckUtils]: 1: Hoare triple {205#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:25,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:25,803 INFO L290 TraceCheckUtils]: 3: Hoare triple {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-21 03:06:25,805 INFO L272 TraceCheckUtils]: 4: Hoare triple {213#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} call main_#t~ret4#1 := fact(main_~x~0#1); {223#(<= |fact_#in~x| 2147483647)} is VALID [2022-02-21 03:06:25,805 INFO L290 TraceCheckUtils]: 5: Hoare triple {223#(<= |fact_#in~x| 2147483647)} ~x := #in~x; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:25,806 INFO L290 TraceCheckUtils]: 6: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x > 1; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:25,806 INFO L290 TraceCheckUtils]: 7: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x - 1 <= 2147483647; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:25,807 INFO L290 TraceCheckUtils]: 8: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x - 1 >= -2147483648; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:25,808 INFO L272 TraceCheckUtils]: 9: Hoare triple {227#(<= fact_~x 2147483647)} call #t~ret0 := fact(~x - 1); {240#(<= |fact_#in~x| 2147483646)} is VALID [2022-02-21 03:06:25,808 INFO L290 TraceCheckUtils]: 10: Hoare triple {240#(<= |fact_#in~x| 2147483646)} ~x := #in~x; {244#(<= fact_~x 2147483646)} is VALID [2022-02-21 03:06:25,809 INFO L290 TraceCheckUtils]: 11: Hoare triple {244#(<= fact_~x 2147483646)} assume ~x > 1; {244#(<= fact_~x 2147483646)} is VALID [2022-02-21 03:06:25,809 INFO L290 TraceCheckUtils]: 12: Hoare triple {244#(<= fact_~x 2147483646)} assume ~x - 1 <= 2147483647; {244#(<= fact_~x 2147483646)} is VALID [2022-02-21 03:06:25,810 INFO L290 TraceCheckUtils]: 13: Hoare triple {244#(<= fact_~x 2147483646)} assume ~x - 1 >= -2147483648; {244#(<= fact_~x 2147483646)} is VALID [2022-02-21 03:06:25,810 INFO L272 TraceCheckUtils]: 14: Hoare triple {244#(<= fact_~x 2147483646)} call #t~ret0 := fact(~x - 1); {205#true} is VALID [2022-02-21 03:06:25,810 INFO L290 TraceCheckUtils]: 15: Hoare triple {205#true} ~x := #in~x; {205#true} is VALID [2022-02-21 03:06:25,811 INFO L290 TraceCheckUtils]: 16: Hoare triple {205#true} assume !(~x > 1);#res := 1; {263#(= |fact_#res| 1)} is VALID [2022-02-21 03:06:25,811 INFO L290 TraceCheckUtils]: 17: Hoare triple {263#(= |fact_#res| 1)} assume true; {263#(= |fact_#res| 1)} is VALID [2022-02-21 03:06:25,812 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {263#(= |fact_#res| 1)} {244#(<= fact_~x 2147483646)} #35#return; {270#(and (<= fact_~x 2147483646) (= |fact_#t~ret0| 1))} is VALID [2022-02-21 03:06:25,813 INFO L290 TraceCheckUtils]: 19: Hoare triple {270#(and (<= fact_~x 2147483646) (= |fact_#t~ret0| 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {274#(and (= fact_~y~0 1) (<= fact_~x 2147483646))} is VALID [2022-02-21 03:06:25,813 INFO L290 TraceCheckUtils]: 20: Hoare triple {274#(and (= fact_~y~0 1) (<= fact_~x 2147483646))} assume !(~y~0 * ~x <= 2147483647); {206#false} is VALID [2022-02-21 03:06:25,814 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:06:25,814 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:06:27,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {278#(<= (* fact_~y~0 fact_~x) 2147483647)} assume !(~y~0 * ~x <= 2147483647); {206#false} is VALID [2022-02-21 03:06:27,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {282#(<= (* |fact_#t~ret0| fact_~x) 2147483647)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {278#(<= (* fact_~y~0 fact_~x) 2147483647)} is VALID [2022-02-21 03:06:29,078 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {289#(forall ((v_fact_~x_BEFORE_CALL_3 Int)) (or (not (<= v_fact_~x_BEFORE_CALL_3 2147483647)) (<= (* v_fact_~x_BEFORE_CALL_3 |fact_#res|) 2147483647)))} {227#(<= fact_~x 2147483647)} #35#return; {282#(<= (* |fact_#t~ret0| fact_~x) 2147483647)} is UNKNOWN [2022-02-21 03:06:29,079 INFO L290 TraceCheckUtils]: 17: Hoare triple {289#(forall ((v_fact_~x_BEFORE_CALL_3 Int)) (or (not (<= v_fact_~x_BEFORE_CALL_3 2147483647)) (<= (* v_fact_~x_BEFORE_CALL_3 |fact_#res|) 2147483647)))} assume true; {289#(forall ((v_fact_~x_BEFORE_CALL_3 Int)) (or (not (<= v_fact_~x_BEFORE_CALL_3 2147483647)) (<= (* v_fact_~x_BEFORE_CALL_3 |fact_#res|) 2147483647)))} is VALID [2022-02-21 03:06:29,080 INFO L290 TraceCheckUtils]: 16: Hoare triple {205#true} assume !(~x > 1);#res := 1; {289#(forall ((v_fact_~x_BEFORE_CALL_3 Int)) (or (not (<= v_fact_~x_BEFORE_CALL_3 2147483647)) (<= (* v_fact_~x_BEFORE_CALL_3 |fact_#res|) 2147483647)))} is VALID [2022-02-21 03:06:29,080 INFO L290 TraceCheckUtils]: 15: Hoare triple {205#true} ~x := #in~x; {205#true} is VALID [2022-02-21 03:06:29,080 INFO L272 TraceCheckUtils]: 14: Hoare triple {227#(<= fact_~x 2147483647)} call #t~ret0 := fact(~x - 1); {205#true} is VALID [2022-02-21 03:06:29,081 INFO L290 TraceCheckUtils]: 13: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x - 1 >= -2147483648; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:29,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x - 1 <= 2147483647; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:29,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {227#(<= fact_~x 2147483647)} assume ~x > 1; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:29,083 INFO L290 TraceCheckUtils]: 10: Hoare triple {223#(<= |fact_#in~x| 2147483647)} ~x := #in~x; {227#(<= fact_~x 2147483647)} is VALID [2022-02-21 03:06:29,084 INFO L272 TraceCheckUtils]: 9: Hoare triple {314#(<= fact_~x 2147483648)} call #t~ret0 := fact(~x - 1); {223#(<= |fact_#in~x| 2147483647)} is VALID [2022-02-21 03:06:29,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#(<= fact_~x 2147483648)} assume ~x - 1 >= -2147483648; {314#(<= fact_~x 2147483648)} is VALID [2022-02-21 03:06:29,085 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#(<= fact_~x 2147483648)} assume ~x - 1 <= 2147483647; {314#(<= fact_~x 2147483648)} is VALID [2022-02-21 03:06:29,085 INFO L290 TraceCheckUtils]: 6: Hoare triple {314#(<= fact_~x 2147483648)} assume ~x > 1; {314#(<= fact_~x 2147483648)} is VALID [2022-02-21 03:06:29,086 INFO L290 TraceCheckUtils]: 5: Hoare triple {327#(<= |fact_#in~x| 2147483648)} ~x := #in~x; {314#(<= fact_~x 2147483648)} is VALID [2022-02-21 03:06:29,086 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} call main_#t~ret4#1 := fact(main_~x~0#1); {327#(<= |fact_#in~x| 2147483648)} is VALID [2022-02-21 03:06:29,087 INFO L290 TraceCheckUtils]: 3: Hoare triple {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} is VALID [2022-02-21 03:06:29,088 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} is VALID [2022-02-21 03:06:29,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {205#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {331#(<= |ULTIMATE.start_main_~x~0#1| 2147483648)} is VALID [2022-02-21 03:06:29,088 INFO L290 TraceCheckUtils]: 0: Hoare triple {205#true} assume { :begin_inline_ULTIMATE.init } true; {205#true} is VALID [2022-02-21 03:06:29,089 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:06:29,089 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:29,089 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [834882335] [2022-02-21 03:06:29,090 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:06:29,090 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1069807933] [2022-02-21 03:06:29,090 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1069807933] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:06:29,090 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-21 03:06:29,090 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2022-02-21 03:06:29,091 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1480232534] [2022-02-21 03:06:29,091 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-21 03:06:29,092 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 21 [2022-02-21 03:06:29,092 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:29,092 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:29,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:29,126 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-21 03:06:29,126 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:29,127 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-21 03:06:29,127 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=195, Unknown=0, NotChecked=0, Total=240 [2022-02-21 03:06:29,128 INFO L87 Difference]: Start difference. First operand 17 states and 18 transitions. Second operand has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:31,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:31,815 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-02-21 03:06:31,815 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-21 03:06:31,816 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 21 [2022-02-21 03:06:31,816 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:31,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:31,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 46 transitions. [2022-02-21 03:06:31,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:31,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 46 transitions. [2022-02-21 03:06:31,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 46 transitions. [2022-02-21 03:06:31,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:31,874 INFO L225 Difference]: With dead ends: 42 [2022-02-21 03:06:31,876 INFO L226 Difference]: Without dead ends: 37 [2022-02-21 03:06:31,877 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=138, Invalid=462, Unknown=0, NotChecked=0, Total=600 [2022-02-21 03:06:31,878 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 68 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 61 SdHoareTripleChecker+Invalid, 209 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 25 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:31,880 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [68 Valid, 61 Invalid, 209 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 154 Invalid, 0 Unknown, 25 Unchecked, 0.7s Time] [2022-02-21 03:06:31,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-21 03:06:31,894 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 31. [2022-02-21 03:06:31,894 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:31,895 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:31,896 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:31,897 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:31,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:31,905 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-21 03:06:31,905 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-21 03:06:31,907 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:31,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:31,908 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Second operand 37 states. [2022-02-21 03:06:31,910 INFO L87 Difference]: Start difference. First operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Second operand 37 states. [2022-02-21 03:06:31,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:31,915 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-21 03:06:31,915 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-21 03:06:31,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:31,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:31,916 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:31,916 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:31,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 24 states have internal predecessors, (28), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:31,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2022-02-21 03:06:31,918 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 21 [2022-02-21 03:06:31,918 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:31,919 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2022-02-21 03:06:31,919 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 11 states have internal predecessors, (28), 5 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:31,919 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2022-02-21 03:06:31,919 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-21 03:06:31,920 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:31,920 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:31,937 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-21 03:06:32,123 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:32,124 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting factErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:32,124 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:32,124 INFO L85 PathProgramCache]: Analyzing trace with hash 1937928487, now seen corresponding path program 1 times [2022-02-21 03:06:32,124 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:32,124 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1201000960] [2022-02-21 03:06:32,125 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:32,125 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:32,139 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:06:32,140 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1079295373] [2022-02-21 03:06:32,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:32,140 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:32,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:32,142 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) [2022-02-21 03:06:32,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:32,178 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-21 03:06:32,179 INFO L263 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-21 03:06:32,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:32,188 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:06:32,362 INFO L290 TraceCheckUtils]: 0: Hoare triple {520#true} assume { :begin_inline_ULTIMATE.init } true; {520#true} is VALID [2022-02-21 03:06:32,363 INFO L290 TraceCheckUtils]: 1: Hoare triple {520#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {520#true} is VALID [2022-02-21 03:06:32,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {520#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {520#true} is VALID [2022-02-21 03:06:32,363 INFO L290 TraceCheckUtils]: 3: Hoare triple {520#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {520#true} is VALID [2022-02-21 03:06:32,363 INFO L272 TraceCheckUtils]: 4: Hoare triple {520#true} call main_#t~ret4#1 := fact(main_~x~0#1); {520#true} is VALID [2022-02-21 03:06:32,364 INFO L290 TraceCheckUtils]: 5: Hoare triple {520#true} ~x := #in~x; {520#true} is VALID [2022-02-21 03:06:32,364 INFO L290 TraceCheckUtils]: 6: Hoare triple {520#true} assume ~x > 1; {543#(< 1 fact_~x)} is VALID [2022-02-21 03:06:32,365 INFO L290 TraceCheckUtils]: 7: Hoare triple {543#(< 1 fact_~x)} assume ~x - 1 <= 2147483647; {547#(and (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:06:32,365 INFO L290 TraceCheckUtils]: 8: Hoare triple {547#(and (<= fact_~x 2147483648) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {547#(and (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:06:32,366 INFO L272 TraceCheckUtils]: 9: Hoare triple {547#(and (<= fact_~x 2147483648) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {520#true} is VALID [2022-02-21 03:06:32,366 INFO L290 TraceCheckUtils]: 10: Hoare triple {520#true} ~x := #in~x; {520#true} is VALID [2022-02-21 03:06:32,366 INFO L290 TraceCheckUtils]: 11: Hoare triple {520#true} assume !(~x > 1);#res := 1; {560#(<= 1 |fact_#res|)} is VALID [2022-02-21 03:06:32,367 INFO L290 TraceCheckUtils]: 12: Hoare triple {560#(<= 1 |fact_#res|)} assume true; {560#(<= 1 |fact_#res|)} is VALID [2022-02-21 03:06:32,368 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {560#(<= 1 |fact_#res|)} {547#(and (<= fact_~x 2147483648) (< 1 fact_~x))} #35#return; {567#(and (<= 1 |fact_#t~ret0|) (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:06:32,368 INFO L290 TraceCheckUtils]: 14: Hoare triple {567#(and (<= 1 |fact_#t~ret0|) (<= fact_~x 2147483648) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {571#(and (<= 1 fact_~y~0) (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:06:32,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {571#(and (<= 1 fact_~y~0) (<= fact_~x 2147483648) (< 1 fact_~x))} assume ~y~0 * ~x <= 2147483647; {571#(and (<= 1 fact_~y~0) (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:06:32,374 INFO L290 TraceCheckUtils]: 16: Hoare triple {571#(and (<= 1 fact_~y~0) (<= fact_~x 2147483648) (< 1 fact_~x))} assume !(~y~0 * ~x >= -2147483648); {521#false} is VALID [2022-02-21 03:06:32,374 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-21 03:06:32,374 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:06:32,375 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:32,377 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1201000960] [2022-02-21 03:06:32,378 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:06:32,378 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1079295373] [2022-02-21 03:06:32,380 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1079295373] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:06:32,380 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:06:32,381 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-21 03:06:32,383 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1824104490] [2022-02-21 03:06:32,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:06:32,384 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 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 17 [2022-02-21 03:06:32,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:32,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:32,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:32,405 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-21 03:06:32,406 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:32,406 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-21 03:06:32,407 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=26, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:06:32,407 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:32,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:32,505 INFO L93 Difference]: Finished difference Result 31 states and 35 transitions. [2022-02-21 03:06:32,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:06:32,505 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 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 17 [2022-02-21 03:06:32,506 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:32,506 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:32,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 20 transitions. [2022-02-21 03:06:32,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:32,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 20 transitions. [2022-02-21 03:06:32,508 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 20 transitions. [2022-02-21 03:06:32,526 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:32,527 INFO L225 Difference]: With dead ends: 31 [2022-02-21 03:06:32,527 INFO L226 Difference]: Without dead ends: 27 [2022-02-21 03:06:32,528 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-21 03:06:32,528 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 10 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 29 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:32,529 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 31 Invalid, 29 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:06:32,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-02-21 03:06:32,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-02-21 03:06:32,544 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:32,544 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-21 03:06:32,544 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-21 03:06:32,545 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-21 03:06:32,546 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:32,548 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2022-02-21 03:06:32,548 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2022-02-21 03:06:32,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:32,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:32,551 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Second operand 27 states. [2022-02-21 03:06:32,551 INFO L87 Difference]: Start difference. First operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Second operand 27 states. [2022-02-21 03:06:32,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:32,554 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2022-02-21 03:06:32,554 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2022-02-21 03:06:32,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:32,557 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:32,557 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:32,557 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:32,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 21 states have internal predecessors, (23), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-21 03:06:32,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 29 transitions. [2022-02-21 03:06:32,559 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 29 transitions. Word has length 17 [2022-02-21 03:06:32,559 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:32,559 INFO L470 AbstractCegarLoop]: Abstraction has 27 states and 29 transitions. [2022-02-21 03:06:32,559 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 6 states have internal predecessors, (13), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-21 03:06:32,559 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2022-02-21 03:06:32,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-21 03:06:32,560 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:32,560 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:32,577 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-02-21 03:06:32,767 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,SelfDestructingSolverStorable3 [2022-02-21 03:06:32,768 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:32,768 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:32,768 INFO L85 PathProgramCache]: Analyzing trace with hash 1596111362, now seen corresponding path program 1 times [2022-02-21 03:06:32,768 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:32,768 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1463265493] [2022-02-21 03:06:32,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:32,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:32,787 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:06:32,787 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [529785576] [2022-02-21 03:06:32,787 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:32,787 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:32,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:32,789 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) [2022-02-21 03:06:32,791 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-21 03:06:32,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:32,827 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-21 03:06:32,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:32,844 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:06:33,153 INFO L290 TraceCheckUtils]: 0: Hoare triple {701#true} assume { :begin_inline_ULTIMATE.init } true; {701#true} is VALID [2022-02-21 03:06:33,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {701#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {701#true} is VALID [2022-02-21 03:06:33,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {701#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {701#true} is VALID [2022-02-21 03:06:33,154 INFO L290 TraceCheckUtils]: 3: Hoare triple {701#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {701#true} is VALID [2022-02-21 03:06:33,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {701#true} call main_#t~ret4#1 := fact(main_~x~0#1); {701#true} is VALID [2022-02-21 03:06:33,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {701#true} ~x := #in~x; {701#true} is VALID [2022-02-21 03:06:33,155 INFO L290 TraceCheckUtils]: 6: Hoare triple {701#true} assume ~x > 1; {701#true} is VALID [2022-02-21 03:06:33,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {701#true} assume ~x - 1 <= 2147483647; {701#true} is VALID [2022-02-21 03:06:33,155 INFO L290 TraceCheckUtils]: 8: Hoare triple {701#true} assume ~x - 1 >= -2147483648; {701#true} is VALID [2022-02-21 03:06:33,155 INFO L272 TraceCheckUtils]: 9: Hoare triple {701#true} call #t~ret0 := fact(~x - 1); {701#true} is VALID [2022-02-21 03:06:33,155 INFO L290 TraceCheckUtils]: 10: Hoare triple {701#true} ~x := #in~x; {701#true} is VALID [2022-02-21 03:06:33,155 INFO L290 TraceCheckUtils]: 11: Hoare triple {701#true} assume ~x > 1; {701#true} is VALID [2022-02-21 03:06:33,156 INFO L290 TraceCheckUtils]: 12: Hoare triple {701#true} assume ~x - 1 <= 2147483647; {701#true} is VALID [2022-02-21 03:06:33,156 INFO L290 TraceCheckUtils]: 13: Hoare triple {701#true} assume ~x - 1 >= -2147483648; {701#true} is VALID [2022-02-21 03:06:33,156 INFO L272 TraceCheckUtils]: 14: Hoare triple {701#true} call #t~ret0 := fact(~x - 1); {701#true} is VALID [2022-02-21 03:06:33,156 INFO L290 TraceCheckUtils]: 15: Hoare triple {701#true} ~x := #in~x; {701#true} is VALID [2022-02-21 03:06:33,157 INFO L290 TraceCheckUtils]: 16: Hoare triple {701#true} assume ~x > 1; {754#(< 1 fact_~x)} is VALID [2022-02-21 03:06:33,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {754#(< 1 fact_~x)} assume ~x - 1 <= 2147483647; {754#(< 1 fact_~x)} is VALID [2022-02-21 03:06:33,158 INFO L290 TraceCheckUtils]: 18: Hoare triple {754#(< 1 fact_~x)} assume ~x - 1 >= -2147483648; {754#(< 1 fact_~x)} is VALID [2022-02-21 03:06:33,158 INFO L272 TraceCheckUtils]: 19: Hoare triple {754#(< 1 fact_~x)} call #t~ret0 := fact(~x - 1); {701#true} is VALID [2022-02-21 03:06:33,158 INFO L290 TraceCheckUtils]: 20: Hoare triple {701#true} ~x := #in~x; {767#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:06:33,158 INFO L290 TraceCheckUtils]: 21: Hoare triple {767#(= fact_~x |fact_#in~x|)} assume ~x > 1; {767#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:06:33,159 INFO L290 TraceCheckUtils]: 22: Hoare triple {767#(= fact_~x |fact_#in~x|)} assume ~x - 1 <= 2147483647; {767#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:06:33,159 INFO L290 TraceCheckUtils]: 23: Hoare triple {767#(= fact_~x |fact_#in~x|)} assume ~x - 1 >= -2147483648; {767#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:06:33,159 INFO L272 TraceCheckUtils]: 24: Hoare triple {767#(= fact_~x |fact_#in~x|)} call #t~ret0 := fact(~x - 1); {701#true} is VALID [2022-02-21 03:06:33,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {701#true} ~x := #in~x; {783#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:33,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {783#(<= |fact_#in~x| fact_~x)} assume !(~x > 1);#res := 1; {787#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:33,161 INFO L290 TraceCheckUtils]: 27: Hoare triple {787#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} assume true; {787#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:33,162 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {787#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} {767#(= fact_~x |fact_#in~x|)} #35#return; {794#(and (= fact_~x |fact_#in~x|) (<= fact_~x 2) (= |fact_#t~ret0| 1))} is VALID [2022-02-21 03:06:33,164 INFO L290 TraceCheckUtils]: 29: Hoare triple {794#(and (= fact_~x |fact_#in~x|) (<= fact_~x 2) (= |fact_#t~ret0| 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {798#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2))} is VALID [2022-02-21 03:06:33,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {798#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2))} assume ~y~0 * ~x <= 2147483647; {798#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2))} is VALID [2022-02-21 03:06:33,165 INFO L290 TraceCheckUtils]: 31: Hoare triple {798#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {805#(and (<= |fact_#in~x| 2) (<= |fact_#res| |fact_#in~x|))} is VALID [2022-02-21 03:06:33,166 INFO L290 TraceCheckUtils]: 32: Hoare triple {805#(and (<= |fact_#in~x| 2) (<= |fact_#res| |fact_#in~x|))} assume true; {805#(and (<= |fact_#in~x| 2) (<= |fact_#res| |fact_#in~x|))} is VALID [2022-02-21 03:06:33,167 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {805#(and (<= |fact_#in~x| 2) (<= |fact_#res| |fact_#in~x|))} {754#(< 1 fact_~x)} #35#return; {812#(and (<= (+ |fact_#t~ret0| 1) fact_~x) (<= fact_~x 3) (< 1 fact_~x))} is VALID [2022-02-21 03:06:33,167 INFO L290 TraceCheckUtils]: 34: Hoare triple {812#(and (<= (+ |fact_#t~ret0| 1) fact_~x) (<= fact_~x 3) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {816#(and (<= (+ fact_~y~0 1) fact_~x) (<= fact_~x 3) (< 1 fact_~x))} is VALID [2022-02-21 03:06:33,168 INFO L290 TraceCheckUtils]: 35: Hoare triple {816#(and (<= (+ fact_~y~0 1) fact_~x) (<= fact_~x 3) (< 1 fact_~x))} assume !(~y~0 * ~x <= 2147483647); {702#false} is VALID [2022-02-21 03:06:33,169 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 18 proven. 8 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-21 03:06:33,169 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:06:33,938 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:33,938 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1463265493] [2022-02-21 03:06:33,938 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:06:33,938 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [529785576] [2022-02-21 03:06:33,938 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [529785576] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:06:33,938 INFO L191 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:06:33,938 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-02-21 03:06:33,938 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1166483966] [2022-02-21 03:06:33,938 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-02-21 03:06:33,939 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 36 [2022-02-21 03:06:33,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:33,942 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:33,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:33,967 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-21 03:06:33,967 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:33,967 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-21 03:06:33,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=143, Unknown=0, NotChecked=0, Total=182 [2022-02-21 03:06:33,968 INFO L87 Difference]: Start difference. First operand 27 states and 29 transitions. Second operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:34,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:34,351 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-02-21 03:06:34,351 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-21 03:06:34,351 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 36 [2022-02-21 03:06:34,352 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:34,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:34,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 30 transitions. [2022-02-21 03:06:34,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:34,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 30 transitions. [2022-02-21 03:06:34,355 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 30 transitions. [2022-02-21 03:06:34,392 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:34,393 INFO L225 Difference]: With dead ends: 38 [2022-02-21 03:06:34,393 INFO L226 Difference]: Without dead ends: 35 [2022-02-21 03:06:34,394 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=103, Invalid=317, Unknown=0, NotChecked=0, Total=420 [2022-02-21 03:06:34,395 INFO L933 BasicCegarLoop]: 9 mSDtfsCounter, 48 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:34,395 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 46 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:06:34,396 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-02-21 03:06:34,409 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 32. [2022-02-21 03:06:34,409 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:34,409 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:34,409 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:34,410 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:34,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:34,412 INFO L93 Difference]: Finished difference Result 35 states and 38 transitions. [2022-02-21 03:06:34,412 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 38 transitions. [2022-02-21 03:06:34,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:34,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:34,413 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Second operand 35 states. [2022-02-21 03:06:34,414 INFO L87 Difference]: Start difference. First operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Second operand 35 states. [2022-02-21 03:06:34,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:34,417 INFO L93 Difference]: Finished difference Result 35 states and 38 transitions. [2022-02-21 03:06:34,417 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 38 transitions. [2022-02-21 03:06:34,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:34,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:34,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:34,418 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:34,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 25 states have (on average 1.08) internal successors, (27), 25 states have internal predecessors, (27), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:06:34,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 34 transitions. [2022-02-21 03:06:34,420 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 34 transitions. Word has length 36 [2022-02-21 03:06:34,421 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:34,421 INFO L470 AbstractCegarLoop]: Abstraction has 32 states and 34 transitions. [2022-02-21 03:06:34,421 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.4) internal successors, (24), 9 states have internal predecessors, (24), 3 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-21 03:06:34,421 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2022-02-21 03:06:34,422 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-21 03:06:34,422 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:34,422 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:34,438 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-21 03:06:34,627 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:34,628 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:34,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:34,628 INFO L85 PathProgramCache]: Analyzing trace with hash -708839420, now seen corresponding path program 2 times [2022-02-21 03:06:34,628 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:34,628 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1005731948] [2022-02-21 03:06:34,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:34,629 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:34,649 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:06:34,649 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [141303925] [2022-02-21 03:06:34,649 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:06:34,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:34,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:34,651 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) [2022-02-21 03:06:34,661 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-21 03:06:34,695 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-21 03:06:34,695 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:06:34,699 INFO L263 TraceCheckSpWp]: Trace formula consists of 81 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-21 03:06:34,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:34,712 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:06:36,571 INFO L290 TraceCheckUtils]: 0: Hoare triple {996#true} assume { :begin_inline_ULTIMATE.init } true; {996#true} is VALID [2022-02-21 03:06:36,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {996#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {996#true} is VALID [2022-02-21 03:06:36,572 INFO L290 TraceCheckUtils]: 2: Hoare triple {996#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {996#true} is VALID [2022-02-21 03:06:36,572 INFO L290 TraceCheckUtils]: 3: Hoare triple {996#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {996#true} is VALID [2022-02-21 03:06:36,572 INFO L272 TraceCheckUtils]: 4: Hoare triple {996#true} call main_#t~ret4#1 := fact(main_~x~0#1); {996#true} is VALID [2022-02-21 03:06:36,572 INFO L290 TraceCheckUtils]: 5: Hoare triple {996#true} ~x := #in~x; {996#true} is VALID [2022-02-21 03:06:36,574 INFO L290 TraceCheckUtils]: 6: Hoare triple {996#true} assume ~x > 1; {1019#(< 1 fact_~x)} is VALID [2022-02-21 03:06:36,574 INFO L290 TraceCheckUtils]: 7: Hoare triple {1019#(< 1 fact_~x)} assume ~x - 1 <= 2147483647; {1019#(< 1 fact_~x)} is VALID [2022-02-21 03:06:36,574 INFO L290 TraceCheckUtils]: 8: Hoare triple {1019#(< 1 fact_~x)} assume ~x - 1 >= -2147483648; {1019#(< 1 fact_~x)} is VALID [2022-02-21 03:06:36,574 INFO L272 TraceCheckUtils]: 9: Hoare triple {1019#(< 1 fact_~x)} call #t~ret0 := fact(~x - 1); {996#true} is VALID [2022-02-21 03:06:36,575 INFO L290 TraceCheckUtils]: 10: Hoare triple {996#true} ~x := #in~x; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,583 INFO L290 TraceCheckUtils]: 11: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 <= 2147483647; {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,585 INFO L290 TraceCheckUtils]: 13: Hoare triple {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,585 INFO L272 TraceCheckUtils]: 14: Hoare triple {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {996#true} is VALID [2022-02-21 03:06:36,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {996#true} ~x := #in~x; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} assume ~x - 1 <= 2147483647; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} assume ~x - 1 >= -2147483648; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,587 INFO L272 TraceCheckUtils]: 19: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} call #t~ret0 := fact(~x - 1); {996#true} is VALID [2022-02-21 03:06:36,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {996#true} ~x := #in~x; {1032#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:36,587 INFO L290 TraceCheckUtils]: 21: Hoare triple {1032#(<= |fact_#in~x| fact_~x)} assume !(~x > 1);#res := 1; {1067#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:36,588 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} assume true; {1067#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:36,594 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1067#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} {1032#(<= |fact_#in~x| fact_~x)} #35#return; {1074#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 2) (= |fact_#t~ret0| 1))} is VALID [2022-02-21 03:06:36,595 INFO L290 TraceCheckUtils]: 24: Hoare triple {1074#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 2) (= |fact_#t~ret0| 1))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1078#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2))} is VALID [2022-02-21 03:06:36,595 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2))} assume ~y~0 * ~x <= 2147483647; {1078#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2))} is VALID [2022-02-21 03:06:36,596 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1085#(and (<= |fact_#res| 2) (<= |fact_#in~x| 2))} is VALID [2022-02-21 03:06:36,596 INFO L290 TraceCheckUtils]: 27: Hoare triple {1085#(and (<= |fact_#res| 2) (<= |fact_#in~x| 2))} assume true; {1085#(and (<= |fact_#res| 2) (<= |fact_#in~x| 2))} is VALID [2022-02-21 03:06:36,597 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1085#(and (<= |fact_#res| 2) (<= |fact_#in~x| 2))} {1036#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} #35#return; {1092#(and (<= |fact_#in~x| fact_~x) (<= |fact_#t~ret0| 2) (<= fact_~x 3) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,597 INFO L290 TraceCheckUtils]: 29: Hoare triple {1092#(and (<= |fact_#in~x| fact_~x) (<= |fact_#t~ret0| 2) (<= fact_~x 3) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1096#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,598 INFO L290 TraceCheckUtils]: 30: Hoare triple {1096#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x))} assume ~y~0 * ~x <= 2147483647; {1096#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {1096#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1103#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x)))} is VALID [2022-02-21 03:06:36,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {1103#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x)))} assume true; {1103#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x)))} is VALID [2022-02-21 03:06:36,600 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1103#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (<= fact_~x 3) (<= fact_~y~0 2) (< 1 fact_~x)))} {1019#(< 1 fact_~x)} #35#return; {1110#(and (exists ((fact_~y~0 Int) (v_fact_~x_30 Int)) (and (<= v_fact_~x_30 3) (<= fact_~x (+ v_fact_~x_30 1)) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_30)) (< 1 v_fact_~x_30) (<= fact_~y~0 2))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,601 INFO L290 TraceCheckUtils]: 34: Hoare triple {1110#(and (exists ((fact_~y~0 Int) (v_fact_~x_30 Int)) (and (<= v_fact_~x_30 3) (<= fact_~x (+ v_fact_~x_30 1)) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_30)) (< 1 v_fact_~x_30) (<= fact_~y~0 2))) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1114#(and (exists ((v_fact_~y~0_11 Int) (v_fact_~x_30 Int)) (and (<= v_fact_~y~0_11 2) (<= fact_~y~0 (* v_fact_~x_30 v_fact_~y~0_11)) (<= v_fact_~x_30 3) (<= fact_~x (+ v_fact_~x_30 1)) (< 1 v_fact_~x_30))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:36,602 INFO L290 TraceCheckUtils]: 35: Hoare triple {1114#(and (exists ((v_fact_~y~0_11 Int) (v_fact_~x_30 Int)) (and (<= v_fact_~y~0_11 2) (<= fact_~y~0 (* v_fact_~x_30 v_fact_~y~0_11)) (<= v_fact_~x_30 3) (<= fact_~x (+ v_fact_~x_30 1)) (< 1 v_fact_~x_30))) (< 1 fact_~x))} assume !(~y~0 * ~x <= 2147483647); {997#false} is VALID [2022-02-21 03:06:36,603 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 6 proven. 19 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-21 03:06:36,603 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:06:38,792 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:06:38,792 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1005731948] [2022-02-21 03:06:38,792 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:06:38,793 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [141303925] [2022-02-21 03:06:38,793 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [141303925] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:06:38,793 INFO L191 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:06:38,793 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-02-21 03:06:38,793 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [938794025] [2022-02-21 03:06:38,793 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-02-21 03:06:38,793 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 36 [2022-02-21 03:06:38,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:06:38,794 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-21 03:06:38,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:38,823 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-21 03:06:38,823 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:06:38,824 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-21 03:06:38,824 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2022-02-21 03:06:38,824 INFO L87 Difference]: Start difference. First operand 32 states and 34 transitions. Second operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-21 03:06:39,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:39,151 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-02-21 03:06:39,151 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-21 03:06:39,151 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 36 [2022-02-21 03:06:39,151 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:06:39,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-21 03:06:39,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 35 transitions. [2022-02-21 03:06:39,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-21 03:06:39,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 35 transitions. [2022-02-21 03:06:39,154 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 35 transitions. [2022-02-21 03:06:39,196 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:06:39,197 INFO L225 Difference]: With dead ends: 43 [2022-02-21 03:06:39,197 INFO L226 Difference]: Without dead ends: 40 [2022-02-21 03:06:39,198 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=104, Invalid=316, Unknown=0, NotChecked=0, Total=420 [2022-02-21 03:06:39,199 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 19 mSDsluCounter, 53 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 63 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 49 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:06:39,199 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 63 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 57 Invalid, 0 Unknown, 49 Unchecked, 0.1s Time] [2022-02-21 03:06:39,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-02-21 03:06:39,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 37. [2022-02-21 03:06:39,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:06:39,213 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-21 03:06:39,213 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-21 03:06:39,213 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-21 03:06:39,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:39,215 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-02-21 03:06:39,215 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-02-21 03:06:39,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:39,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:39,216 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) Second operand 40 states. [2022-02-21 03:06:39,216 INFO L87 Difference]: Start difference. First operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) Second operand 40 states. [2022-02-21 03:06:39,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:06:39,218 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-02-21 03:06:39,218 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-02-21 03:06:39,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:06:39,219 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:06:39,219 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:06:39,219 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:06:39,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 3 states have call successors, (3), 2 states have call predecessors, (3), 4 states have return successors, (5), 5 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-21 03:06:39,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 39 transitions. [2022-02-21 03:06:39,221 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 39 transitions. Word has length 36 [2022-02-21 03:06:39,221 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:06:39,221 INFO L470 AbstractCegarLoop]: Abstraction has 37 states and 39 transitions. [2022-02-21 03:06:39,221 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.076923076923077) internal successors, (27), 11 states have internal predecessors, (27), 4 states have call successors, (4), 1 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-21 03:06:39,221 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-02-21 03:06:39,222 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-21 03:06:39,222 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:06:39,222 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:06:39,240 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-21 03:06:39,427 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:39,427 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:06:39,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:06:39,428 INFO L85 PathProgramCache]: Analyzing trace with hash -2142068702, now seen corresponding path program 3 times [2022-02-21 03:06:39,428 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:06:39,428 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [658139589] [2022-02-21 03:06:39,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:06:39,429 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:06:39,457 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:06:39,457 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2047022282] [2022-02-21 03:06:39,457 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-21 03:06:39,457 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:06:39,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:06:39,465 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) [2022-02-21 03:06:39,479 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-02-21 03:06:39,527 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2022-02-21 03:06:39,528 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:06:39,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-21 03:06:39,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:06:39,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:06:55,831 INFO L290 TraceCheckUtils]: 0: Hoare triple {1307#true} assume { :begin_inline_ULTIMATE.init } true; {1307#true} is VALID [2022-02-21 03:06:55,831 INFO L290 TraceCheckUtils]: 1: Hoare triple {1307#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {1307#true} is VALID [2022-02-21 03:06:55,831 INFO L290 TraceCheckUtils]: 2: Hoare triple {1307#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {1307#true} is VALID [2022-02-21 03:06:55,832 INFO L290 TraceCheckUtils]: 3: Hoare triple {1307#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {1307#true} is VALID [2022-02-21 03:06:55,832 INFO L272 TraceCheckUtils]: 4: Hoare triple {1307#true} call main_#t~ret4#1 := fact(main_~x~0#1); {1307#true} is VALID [2022-02-21 03:06:55,832 INFO L290 TraceCheckUtils]: 5: Hoare triple {1307#true} ~x := #in~x; {1307#true} is VALID [2022-02-21 03:06:55,832 INFO L290 TraceCheckUtils]: 6: Hoare triple {1307#true} assume ~x > 1; {1330#(< 1 fact_~x)} is VALID [2022-02-21 03:06:55,832 INFO L290 TraceCheckUtils]: 7: Hoare triple {1330#(< 1 fact_~x)} assume ~x - 1 <= 2147483647; {1330#(< 1 fact_~x)} is VALID [2022-02-21 03:06:55,833 INFO L290 TraceCheckUtils]: 8: Hoare triple {1330#(< 1 fact_~x)} assume ~x - 1 >= -2147483648; {1330#(< 1 fact_~x)} is VALID [2022-02-21 03:06:55,833 INFO L272 TraceCheckUtils]: 9: Hoare triple {1330#(< 1 fact_~x)} call #t~ret0 := fact(~x - 1); {1307#true} is VALID [2022-02-21 03:06:55,833 INFO L290 TraceCheckUtils]: 10: Hoare triple {1307#true} ~x := #in~x; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,834 INFO L290 TraceCheckUtils]: 11: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 <= 2147483647; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,834 INFO L272 TraceCheckUtils]: 14: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {1307#true} is VALID [2022-02-21 03:06:55,835 INFO L290 TraceCheckUtils]: 15: Hoare triple {1307#true} ~x := #in~x; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,835 INFO L290 TraceCheckUtils]: 16: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,835 INFO L290 TraceCheckUtils]: 17: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume ~x - 1 <= 2147483647; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume ~x - 1 >= -2147483648; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,836 INFO L272 TraceCheckUtils]: 19: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} call #t~ret0 := fact(~x - 1); {1307#true} is VALID [2022-02-21 03:06:55,836 INFO L290 TraceCheckUtils]: 20: Hoare triple {1307#true} ~x := #in~x; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,837 INFO L290 TraceCheckUtils]: 21: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,837 INFO L290 TraceCheckUtils]: 22: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 <= 2147483647; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,837 INFO L290 TraceCheckUtils]: 23: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,837 INFO L272 TraceCheckUtils]: 24: Hoare triple {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {1307#true} is VALID [2022-02-21 03:06:55,838 INFO L290 TraceCheckUtils]: 25: Hoare triple {1307#true} ~x := #in~x; {1343#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:06:55,838 INFO L290 TraceCheckUtils]: 26: Hoare triple {1343#(<= |fact_#in~x| fact_~x)} assume !(~x > 1);#res := 1; {1393#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:55,839 INFO L290 TraceCheckUtils]: 27: Hoare triple {1393#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} assume true; {1393#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:06:55,840 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1393#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} #35#return; {1400#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 2) (= |fact_#t~ret0| 1) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,840 INFO L290 TraceCheckUtils]: 29: Hoare triple {1400#(and (<= |fact_#in~x| fact_~x) (<= fact_~x 2) (= |fact_#t~ret0| 1) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1404#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,841 INFO L290 TraceCheckUtils]: 30: Hoare triple {1404#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} assume ~y~0 * ~x <= 2147483647; {1404#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {1404#(and (<= |fact_#in~x| fact_~x) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1411#(and (<= |fact_#in~x| |fact_#res|) (<= |fact_#res| 2) (< 1 |fact_#res|))} is VALID [2022-02-21 03:06:55,842 INFO L290 TraceCheckUtils]: 32: Hoare triple {1411#(and (<= |fact_#in~x| |fact_#res|) (<= |fact_#res| 2) (< 1 |fact_#res|))} assume true; {1411#(and (<= |fact_#in~x| |fact_#res|) (<= |fact_#res| 2) (< 1 |fact_#res|))} is VALID [2022-02-21 03:06:55,843 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1411#(and (<= |fact_#in~x| |fact_#res|) (<= |fact_#res| 2) (< 1 |fact_#res|))} {1343#(<= |fact_#in~x| fact_~x)} #35#return; {1418#(and (<= |fact_#in~x| fact_~x) (<= |fact_#t~ret0| 2) (<= fact_~x (+ |fact_#t~ret0| 1)) (< 1 |fact_#t~ret0|))} is VALID [2022-02-21 03:06:55,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {1418#(and (<= |fact_#in~x| fact_~x) (<= |fact_#t~ret0| 2) (<= fact_~x (+ |fact_#t~ret0| 1)) (< 1 |fact_#t~ret0|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1422#(and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= fact_~y~0 2))} is VALID [2022-02-21 03:06:55,844 INFO L290 TraceCheckUtils]: 35: Hoare triple {1422#(and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= fact_~y~0 2))} assume ~y~0 * ~x <= 2147483647; {1422#(and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= fact_~y~0 2))} is VALID [2022-02-21 03:06:55,845 INFO L290 TraceCheckUtils]: 36: Hoare triple {1422#(and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= fact_~y~0 2))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1429#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (<= |fact_#res| (* fact_~y~0 fact_~x)) (< 1 fact_~y~0) (<= fact_~y~0 2)))} is VALID [2022-02-21 03:06:55,853 INFO L290 TraceCheckUtils]: 37: Hoare triple {1429#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (<= |fact_#res| (* fact_~y~0 fact_~x)) (< 1 fact_~y~0) (<= fact_~y~0 2)))} assume true; {1429#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (<= |fact_#res| (* fact_~y~0 fact_~x)) (< 1 fact_~y~0) (<= fact_~y~0 2)))} is VALID [2022-02-21 03:06:55,854 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1429#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= fact_~x (+ fact_~y~0 1)) (<= |fact_#res| (* fact_~y~0 fact_~x)) (< 1 fact_~y~0) (<= fact_~y~0 2)))} {1347#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} #35#return; {1436#(and (<= |fact_#in~x| fact_~x) (exists ((fact_~y~0 Int) (v_fact_~x_52 Int)) (and (<= fact_~x (+ v_fact_~x_52 1)) (<= v_fact_~x_52 (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_52)) (<= fact_~y~0 2))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,855 INFO L290 TraceCheckUtils]: 39: Hoare triple {1436#(and (<= |fact_#in~x| fact_~x) (exists ((fact_~y~0 Int) (v_fact_~x_52 Int)) (and (<= fact_~x (+ v_fact_~x_52 1)) (<= v_fact_~x_52 (+ fact_~y~0 1)) (< 1 fact_~y~0) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_52)) (<= fact_~y~0 2))) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1440#(and (<= |fact_#in~x| fact_~x) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,860 INFO L290 TraceCheckUtils]: 40: Hoare triple {1440#(and (<= |fact_#in~x| fact_~x) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x))} assume ~y~0 * ~x <= 2147483647; {1440#(and (<= |fact_#in~x| fact_~x) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:55,862 INFO L290 TraceCheckUtils]: 41: Hoare triple {1440#(and (<= |fact_#in~x| fact_~x) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1447#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x)))} is VALID [2022-02-21 03:06:55,863 INFO L290 TraceCheckUtils]: 42: Hoare triple {1447#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x)))} assume true; {1447#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x)))} is VALID [2022-02-21 03:06:55,865 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1447#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~x_52 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (<= fact_~x (+ v_fact_~x_52 1)) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)))) (< 1 fact_~x)))} {1330#(< 1 fact_~x)} #35#return; {1454#(and (exists ((fact_~y~0 Int) (v_fact_~x_52 Int) (v_fact_~x_53 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (< 1 v_fact_~y~0_20) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_53)) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= v_fact_~x_53 (+ v_fact_~x_52 1)) (<= fact_~x (+ v_fact_~x_53 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)) (< 1 v_fact_~x_53))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:56,052 INFO L290 TraceCheckUtils]: 44: Hoare triple {1454#(and (exists ((fact_~y~0 Int) (v_fact_~x_52 Int) (v_fact_~x_53 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_20 2) (< 1 v_fact_~y~0_20) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_53)) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= v_fact_~x_53 (+ v_fact_~x_52 1)) (<= fact_~x (+ v_fact_~x_53 1)) (<= fact_~y~0 (* v_fact_~x_52 v_fact_~y~0_20)) (< 1 v_fact_~x_53))) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1458#(and (exists ((v_fact_~x_52 Int) (v_fact_~x_53 Int) (v_fact_~y~0_21 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_21 (* v_fact_~x_52 v_fact_~y~0_20)) (<= v_fact_~y~0_20 2) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_53 v_fact_~y~0_21)) (<= v_fact_~x_53 (+ v_fact_~x_52 1)) (<= fact_~x (+ v_fact_~x_53 1)) (< 1 v_fact_~x_53))) (< 1 fact_~x))} is VALID [2022-02-21 03:06:56,054 INFO L290 TraceCheckUtils]: 45: Hoare triple {1458#(and (exists ((v_fact_~x_52 Int) (v_fact_~x_53 Int) (v_fact_~y~0_21 Int) (v_fact_~y~0_20 Int)) (and (<= v_fact_~y~0_21 (* v_fact_~x_52 v_fact_~y~0_20)) (<= v_fact_~y~0_20 2) (< 1 v_fact_~y~0_20) (<= v_fact_~x_52 (+ v_fact_~y~0_20 1)) (<= fact_~y~0 (* v_fact_~x_53 v_fact_~y~0_21)) (<= v_fact_~x_53 (+ v_fact_~x_52 1)) (<= fact_~x (+ v_fact_~x_53 1)) (< 1 v_fact_~x_53))) (< 1 fact_~x))} assume !(~y~0 * ~x <= 2147483647); {1308#false} is VALID [2022-02-21 03:06:56,055 INFO L134 CoverageAnalysis]: Checked inductivity of 65 backedges. 13 proven. 33 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-02-21 03:06:56,055 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:07:00,974 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:07:00,974 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [658139589] [2022-02-21 03:07:00,974 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:07:00,974 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2047022282] [2022-02-21 03:07:00,974 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2047022282] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:07:00,974 INFO L191 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:07:00,975 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-02-21 03:07:00,975 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1569063660] [2022-02-21 03:07:00,975 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-02-21 03:07:00,975 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 46 [2022-02-21 03:07:00,977 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:07:00,978 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-21 03:07:03,036 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 38 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-21 03:07:03,037 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-21 03:07:03,037 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:07:03,037 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-21 03:07:03,037 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=291, Unknown=7, NotChecked=0, Total=380 [2022-02-21 03:07:03,038 INFO L87 Difference]: Start difference. First operand 37 states and 39 transitions. Second operand has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-21 03:07:05,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:05,524 INFO L93 Difference]: Finished difference Result 45 states and 48 transitions. [2022-02-21 03:07:05,525 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-21 03:07:05,525 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 46 [2022-02-21 03:07:05,525 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:07:05,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-21 03:07:05,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 37 transitions. [2022-02-21 03:07:05,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-21 03:07:05,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 37 transitions. [2022-02-21 03:07:05,528 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 37 transitions. [2022-02-21 03:07:05,755 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:07:05,756 INFO L225 Difference]: With dead ends: 45 [2022-02-21 03:07:05,756 INFO L226 Difference]: Without dead ends: 42 [2022-02-21 03:07:05,756 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 113 ImplicationChecksByTransitivity, 13.7s TimeCoverageRelationStatistics Valid=146, Invalid=497, Unknown=7, NotChecked=0, Total=650 [2022-02-21 03:07:05,757 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 36 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 141 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 62 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:07:05,757 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 54 Invalid, 141 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 69 Invalid, 0 Unknown, 62 Unchecked, 0.1s Time] [2022-02-21 03:07:05,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-02-21 03:07:05,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2022-02-21 03:07:05,779 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:07:05,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-21 03:07:05,779 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-21 03:07:05,779 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-21 03:07:05,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:05,782 INFO L93 Difference]: Finished difference Result 42 states and 44 transitions. [2022-02-21 03:07:05,782 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2022-02-21 03:07:05,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:07:05,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:07:05,783 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) Second operand 42 states. [2022-02-21 03:07:05,783 INFO L87 Difference]: Start difference. First operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) Second operand 42 states. [2022-02-21 03:07:05,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:05,785 INFO L93 Difference]: Finished difference Result 42 states and 44 transitions. [2022-02-21 03:07:05,785 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2022-02-21 03:07:05,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:07:05,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:07:05,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:07:05,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:07:05,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 33 states have (on average 1.0606060606060606) internal successors, (35), 33 states have internal predecessors, (35), 3 states have call successors, (3), 2 states have call predecessors, (3), 5 states have return successors, (6), 6 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-21 03:07:05,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 44 transitions. [2022-02-21 03:07:05,787 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 44 transitions. Word has length 46 [2022-02-21 03:07:05,787 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:07:05,788 INFO L470 AbstractCegarLoop]: Abstraction has 42 states and 44 transitions. [2022-02-21 03:07:05,788 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 1.9375) internal successors, (31), 13 states have internal predecessors, (31), 4 states have call successors, (4), 1 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-21 03:07:05,788 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2022-02-21 03:07:05,789 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-21 03:07:05,789 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:07:05,789 INFO L514 BasicCegarLoop]: trace histogram [8, 7, 7, 7, 7, 5, 5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:07:05,809 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-02-21 03:07:05,991 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:07:05,992 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:07:05,992 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:07:05,992 INFO L85 PathProgramCache]: Analyzing trace with hash -200088220, now seen corresponding path program 4 times [2022-02-21 03:07:05,992 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:07:05,992 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [828292332] [2022-02-21 03:07:05,992 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:07:05,993 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:07:06,022 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:07:06,023 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [417590453] [2022-02-21 03:07:06,023 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-21 03:07:06,023 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:07:06,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:07:06,028 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) [2022-02-21 03:07:06,033 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-02-21 03:07:06,096 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-21 03:07:06,097 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:07:06,098 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 43 conjunts are in the unsatisfiable core [2022-02-21 03:07:06,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:07:06,131 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 0: Hoare triple {1668#true} assume { :begin_inline_ULTIMATE.init } true; {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 1: Hoare triple {1668#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet1#1, main_#t~nondet2#1, main_#t~nondet3#1, main_#t~ret4#1, main_~x~0#1, main_~y~1#1, main_~z~0#1;assume -2147483648 <= main_#t~nondet1#1 && main_#t~nondet1#1 <= 2147483647;main_~x~0#1 := main_#t~nondet1#1;havoc main_#t~nondet1#1; {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 2: Hoare triple {1668#true} assume !(main_~x~0#1 < 0);assume -2147483648 <= main_#t~nondet2#1 && main_#t~nondet2#1 <= 2147483647;main_~y~1#1 := main_#t~nondet2#1;havoc main_#t~nondet2#1; {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 3: Hoare triple {1668#true} assume !(main_~y~1#1 < 0);assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_~z~0#1 := main_#t~nondet3#1;havoc main_#t~nondet3#1; {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L272 TraceCheckUtils]: 4: Hoare triple {1668#true} call main_#t~ret4#1 := fact(main_~x~0#1); {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 5: Hoare triple {1668#true} ~x := #in~x; {1668#true} is VALID [2022-02-21 03:07:16,210 INFO L290 TraceCheckUtils]: 6: Hoare triple {1668#true} assume ~x > 1; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 7: Hoare triple {1668#true} assume ~x - 1 <= 2147483647; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 8: Hoare triple {1668#true} assume ~x - 1 >= -2147483648; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L272 TraceCheckUtils]: 9: Hoare triple {1668#true} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 10: Hoare triple {1668#true} ~x := #in~x; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 11: Hoare triple {1668#true} assume ~x > 1; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 12: Hoare triple {1668#true} assume ~x - 1 <= 2147483647; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L290 TraceCheckUtils]: 13: Hoare triple {1668#true} assume ~x - 1 >= -2147483648; {1668#true} is VALID [2022-02-21 03:07:16,211 INFO L272 TraceCheckUtils]: 14: Hoare triple {1668#true} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,212 INFO L290 TraceCheckUtils]: 15: Hoare triple {1668#true} ~x := #in~x; {1668#true} is VALID [2022-02-21 03:07:16,212 INFO L290 TraceCheckUtils]: 16: Hoare triple {1668#true} assume ~x > 1; {1721#(< 1 fact_~x)} is VALID [2022-02-21 03:07:16,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {1721#(< 1 fact_~x)} assume ~x - 1 <= 2147483647; {1725#(and (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {1725#(and (<= fact_~x 2147483648) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1725#(and (<= fact_~x 2147483648) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,213 INFO L272 TraceCheckUtils]: 19: Hoare triple {1725#(and (<= fact_~x 2147483648) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {1668#true} ~x := #in~x; {1735#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:07:16,214 INFO L290 TraceCheckUtils]: 21: Hoare triple {1735#(<= |fact_#in~x| fact_~x)} assume ~x > 1; {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 <= 2147483647; {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,214 INFO L272 TraceCheckUtils]: 24: Hoare triple {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,215 INFO L290 TraceCheckUtils]: 25: Hoare triple {1668#true} ~x := #in~x; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,215 INFO L290 TraceCheckUtils]: 26: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x > 1; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,216 INFO L290 TraceCheckUtils]: 27: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x - 1 <= 2147483647; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,216 INFO L290 TraceCheckUtils]: 28: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x - 1 >= -2147483648; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,216 INFO L272 TraceCheckUtils]: 29: Hoare triple {1752#(= fact_~x |fact_#in~x|)} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,216 INFO L290 TraceCheckUtils]: 30: Hoare triple {1668#true} ~x := #in~x; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,217 INFO L290 TraceCheckUtils]: 31: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x > 1; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,217 INFO L290 TraceCheckUtils]: 32: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x - 1 <= 2147483647; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,217 INFO L290 TraceCheckUtils]: 33: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x - 1 >= -2147483648; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,218 INFO L272 TraceCheckUtils]: 34: Hoare triple {1752#(= fact_~x |fact_#in~x|)} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,218 INFO L290 TraceCheckUtils]: 35: Hoare triple {1668#true} ~x := #in~x; {1752#(= fact_~x |fact_#in~x|)} is VALID [2022-02-21 03:07:16,218 INFO L290 TraceCheckUtils]: 36: Hoare triple {1752#(= fact_~x |fact_#in~x|)} assume ~x > 1; {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,219 INFO L290 TraceCheckUtils]: 37: Hoare triple {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} assume ~x - 1 <= 2147483647; {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,219 INFO L290 TraceCheckUtils]: 38: Hoare triple {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} assume ~x - 1 >= -2147483648; {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,219 INFO L272 TraceCheckUtils]: 39: Hoare triple {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} call #t~ret0 := fact(~x - 1); {1668#true} is VALID [2022-02-21 03:07:16,219 INFO L290 TraceCheckUtils]: 40: Hoare triple {1668#true} ~x := #in~x; {1735#(<= |fact_#in~x| fact_~x)} is VALID [2022-02-21 03:07:16,220 INFO L290 TraceCheckUtils]: 41: Hoare triple {1735#(<= |fact_#in~x| fact_~x)} assume !(~x > 1);#res := 1; {1802#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:07:16,221 INFO L290 TraceCheckUtils]: 42: Hoare triple {1802#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} assume true; {1802#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} is VALID [2022-02-21 03:07:16,222 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1802#(and (= |fact_#res| 1) (<= |fact_#in~x| 1))} {1786#(and (= fact_~x |fact_#in~x|) (< 1 fact_~x))} #35#return; {1809#(and (= fact_~x |fact_#in~x|) (<= fact_~x 2) (= |fact_#t~ret0| 1) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,222 INFO L290 TraceCheckUtils]: 44: Hoare triple {1809#(and (= fact_~x |fact_#in~x|) (<= fact_~x 2) (= |fact_#t~ret0| 1) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1813#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,222 INFO L290 TraceCheckUtils]: 45: Hoare triple {1813#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} assume ~y~0 * ~x <= 2147483647; {1813#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} is VALID [2022-02-21 03:07:16,223 INFO L290 TraceCheckUtils]: 46: Hoare triple {1813#(and (= fact_~x |fact_#in~x|) (= fact_~y~0 1) (<= fact_~x 2) (< 1 fact_~x))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1820#(and (<= |fact_#res| 2) (< 1 |fact_#res|) (= |fact_#res| |fact_#in~x|))} is VALID [2022-02-21 03:07:16,224 INFO L290 TraceCheckUtils]: 47: Hoare triple {1820#(and (<= |fact_#res| 2) (< 1 |fact_#res|) (= |fact_#res| |fact_#in~x|))} assume true; {1820#(and (<= |fact_#res| 2) (< 1 |fact_#res|) (= |fact_#res| |fact_#in~x|))} is VALID [2022-02-21 03:07:16,225 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {1820#(and (<= |fact_#res| 2) (< 1 |fact_#res|) (= |fact_#res| |fact_#in~x|))} {1752#(= fact_~x |fact_#in~x|)} #35#return; {1827#(and (= |fact_#t~ret0| (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (<= |fact_#t~ret0| 2) (< 1 |fact_#t~ret0|))} is VALID [2022-02-21 03:07:16,225 INFO L290 TraceCheckUtils]: 49: Hoare triple {1827#(and (= |fact_#t~ret0| (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (<= |fact_#t~ret0| 2) (< 1 |fact_#t~ret0|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1831#(and (= fact_~y~0 (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (< 1 fact_~y~0) (<= fact_~y~0 2))} is VALID [2022-02-21 03:07:16,226 INFO L290 TraceCheckUtils]: 50: Hoare triple {1831#(and (= fact_~y~0 (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (< 1 fact_~y~0) (<= fact_~y~0 2))} assume ~y~0 * ~x <= 2147483647; {1831#(and (= fact_~y~0 (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (< 1 fact_~y~0) (<= fact_~y~0 2))} is VALID [2022-02-21 03:07:16,228 INFO L290 TraceCheckUtils]: 51: Hoare triple {1831#(and (= fact_~y~0 (+ (- 1) fact_~x)) (= fact_~x |fact_#in~x|) (< 1 fact_~y~0) (<= fact_~y~0 2))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1838#(and (<= |fact_#in~x| 3) (< 2 |fact_#in~x|) (<= (+ |fact_#res| |fact_#in~x|) (* |fact_#in~x| |fact_#in~x|)))} is VALID [2022-02-21 03:07:16,228 INFO L290 TraceCheckUtils]: 52: Hoare triple {1838#(and (<= |fact_#in~x| 3) (< 2 |fact_#in~x|) (<= (+ |fact_#res| |fact_#in~x|) (* |fact_#in~x| |fact_#in~x|)))} assume true; {1838#(and (<= |fact_#in~x| 3) (< 2 |fact_#in~x|) (<= (+ |fact_#res| |fact_#in~x|) (* |fact_#in~x| |fact_#in~x|)))} is VALID [2022-02-21 03:07:16,230 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {1838#(and (<= |fact_#in~x| 3) (< 2 |fact_#in~x|) (<= (+ |fact_#res| |fact_#in~x|) (* |fact_#in~x| |fact_#in~x|)))} {1752#(= fact_~x |fact_#in~x|)} #35#return; {1845#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ |fact_#t~ret0| (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} is VALID [2022-02-21 03:07:16,231 INFO L290 TraceCheckUtils]: 54: Hoare triple {1845#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ |fact_#t~ret0| (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1849#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ fact_~y~0 (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} is VALID [2022-02-21 03:07:16,231 INFO L290 TraceCheckUtils]: 55: Hoare triple {1849#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ fact_~y~0 (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} assume ~y~0 * ~x <= 2147483647; {1849#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ fact_~y~0 (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} is VALID [2022-02-21 03:07:16,232 INFO L290 TraceCheckUtils]: 56: Hoare triple {1849#(and (< 3 fact_~x) (= fact_~x |fact_#in~x|) (<= (+ fact_~y~0 (* fact_~x 3)) (+ 2 (* fact_~x fact_~x))) (<= fact_~x 4))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1856#(and (< 3 |fact_#in~x|) (exists ((fact_~y~0 Int)) (and (<= |fact_#res| (* fact_~y~0 |fact_#in~x|)) (<= (+ fact_~y~0 (* 3 |fact_#in~x|)) (+ (* |fact_#in~x| |fact_#in~x|) 2)))) (<= |fact_#in~x| 4))} is VALID [2022-02-21 03:07:16,233 INFO L290 TraceCheckUtils]: 57: Hoare triple {1856#(and (< 3 |fact_#in~x|) (exists ((fact_~y~0 Int)) (and (<= |fact_#res| (* fact_~y~0 |fact_#in~x|)) (<= (+ fact_~y~0 (* 3 |fact_#in~x|)) (+ (* |fact_#in~x| |fact_#in~x|) 2)))) (<= |fact_#in~x| 4))} assume true; {1856#(and (< 3 |fact_#in~x|) (exists ((fact_~y~0 Int)) (and (<= |fact_#res| (* fact_~y~0 |fact_#in~x|)) (<= (+ fact_~y~0 (* 3 |fact_#in~x|)) (+ (* |fact_#in~x| |fact_#in~x|) 2)))) (<= |fact_#in~x| 4))} is VALID [2022-02-21 03:07:16,237 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {1856#(and (< 3 |fact_#in~x|) (exists ((fact_~y~0 Int)) (and (<= |fact_#res| (* fact_~y~0 |fact_#in~x|)) (<= (+ fact_~y~0 (* 3 |fact_#in~x|)) (+ (* |fact_#in~x| |fact_#in~x|) 2)))) (<= |fact_#in~x| 4))} {1739#(and (<= |fact_#in~x| fact_~x) (< 1 fact_~x))} #35#return; {1863#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((fact_~y~0 Int)) (and (<= (+ fact_~y~0 |fact_#t~ret0|) (* fact_~y~0 fact_~x)) (<= (+ fact_~y~0 (* fact_~x 5)) (+ 6 (* fact_~x fact_~x))))))} is VALID [2022-02-21 03:07:16,239 INFO L290 TraceCheckUtils]: 59: Hoare triple {1863#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((fact_~y~0 Int)) (and (<= (+ fact_~y~0 |fact_#t~ret0|) (* fact_~y~0 fact_~x)) (<= (+ fact_~y~0 (* fact_~x 5)) (+ 6 (* fact_~x fact_~x))))))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1867#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36)))))} is VALID [2022-02-21 03:07:16,240 INFO L290 TraceCheckUtils]: 60: Hoare triple {1867#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36)))))} assume ~y~0 * ~x <= 2147483647; {1867#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36)))))} is VALID [2022-02-21 03:07:16,242 INFO L290 TraceCheckUtils]: 61: Hoare triple {1867#(and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36)))))} assume ~y~0 * ~x >= -2147483648;#res := ~y~0 * ~x; {1874#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36))))))} is VALID [2022-02-21 03:07:16,257 INFO L290 TraceCheckUtils]: 62: Hoare triple {1874#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36))))))} assume true; {1874#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36))))))} is VALID [2022-02-21 03:07:16,279 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {1874#(exists ((fact_~y~0 Int) (fact_~x Int)) (and (<= |fact_#in~x| fact_~x) (< 4 fact_~x) (<= fact_~x 5) (<= |fact_#res| (* fact_~y~0 fact_~x)) (exists ((v_fact_~y~0_36 Int)) (and (<= (+ (* fact_~x 5) v_fact_~y~0_36) (+ 6 (* fact_~x fact_~x))) (<= (+ fact_~y~0 v_fact_~y~0_36) (* fact_~x v_fact_~y~0_36))))))} {1725#(and (<= fact_~x 2147483648) (< 1 fact_~x))} #35#return; {1881#(and (exists ((v_fact_~y~0_36 Int) (v_fact_~x_83 Int) (fact_~y~0 Int)) (and (<= fact_~x (+ v_fact_~x_83 1)) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_83)) (<= (+ fact_~y~0 v_fact_~y~0_36) (* v_fact_~x_83 v_fact_~y~0_36)) (<= v_fact_~x_83 5) (<= (+ (* 5 v_fact_~x_83) v_fact_~y~0_36) (+ 6 (* v_fact_~x_83 v_fact_~x_83))) (< 4 v_fact_~x_83))) (< 1 fact_~x))} is VALID [2022-02-21 03:07:17,529 INFO L290 TraceCheckUtils]: 64: Hoare triple {1881#(and (exists ((v_fact_~y~0_36 Int) (v_fact_~x_83 Int) (fact_~y~0 Int)) (and (<= fact_~x (+ v_fact_~x_83 1)) (<= |fact_#t~ret0| (* fact_~y~0 v_fact_~x_83)) (<= (+ fact_~y~0 v_fact_~y~0_36) (* v_fact_~x_83 v_fact_~y~0_36)) (<= v_fact_~x_83 5) (<= (+ (* 5 v_fact_~x_83) v_fact_~y~0_36) (+ 6 (* v_fact_~x_83 v_fact_~x_83))) (< 4 v_fact_~x_83))) (< 1 fact_~x))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647;~y~0 := #t~ret0;havoc #t~ret0; {1885#(and (exists ((v_fact_~y~0_36 Int) (v_fact_~x_83 Int) (v_fact_~y~0_37 Int)) (and (<= fact_~x (+ v_fact_~x_83 1)) (<= (+ v_fact_~y~0_37 v_fact_~y~0_36) (* v_fact_~x_83 v_fact_~y~0_36)) (<= v_fact_~x_83 5) (<= fact_~y~0 (* v_fact_~x_83 v_fact_~y~0_37)) (<= (+ (* 5 v_fact_~x_83) v_fact_~y~0_36) (+ 6 (* v_fact_~x_83 v_fact_~x_83))) (< 4 v_fact_~x_83))) (< 1 fact_~x))} is VALID [2022-02-21 03:07:17,530 INFO L290 TraceCheckUtils]: 65: Hoare triple {1885#(and (exists ((v_fact_~y~0_36 Int) (v_fact_~x_83 Int) (v_fact_~y~0_37 Int)) (and (<= fact_~x (+ v_fact_~x_83 1)) (<= (+ v_fact_~y~0_37 v_fact_~y~0_36) (* v_fact_~x_83 v_fact_~y~0_36)) (<= v_fact_~x_83 5) (<= fact_~y~0 (* v_fact_~x_83 v_fact_~y~0_37)) (<= (+ (* 5 v_fact_~x_83) v_fact_~y~0_36) (+ 6 (* v_fact_~x_83 v_fact_~x_83))) (< 4 v_fact_~x_83))) (< 1 fact_~x))} assume !(~y~0 * ~x <= 2147483647); {1669#false} is VALID [2022-02-21 03:07:17,530 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 59 proven. 65 refuted. 0 times theorem prover too weak. 41 trivial. 0 not checked. [2022-02-21 03:07:17,531 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:07:21,672 WARN L756 TransFormulaUtils]: predicate-based correctness check returned UNKNOWN, hence correctness of interprocedural sequential composition was not checked. [2022-02-21 03:07:23,187 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:07:23,187 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [828292332] [2022-02-21 03:07:23,187 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-21 03:07:23,187 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [417590453] [2022-02-21 03:07:23,187 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [417590453] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:07:23,187 INFO L191 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:07:23,187 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22] total 22 [2022-02-21 03:07:23,188 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1820546275] [2022-02-21 03:07:23,188 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-02-21 03:07:23,188 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 66 [2022-02-21 03:07:23,939 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:07:23,940 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:07:24,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:07:24,032 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-02-21 03:07:24,032 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:07:24,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-02-21 03:07:24,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=141, Invalid=503, Unknown=6, NotChecked=0, Total=650 [2022-02-21 03:07:24,034 INFO L87 Difference]: Start difference. First operand 42 states and 44 transitions. Second operand has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:07:27,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:27,657 INFO L93 Difference]: Finished difference Result 53 states and 57 transitions. [2022-02-21 03:07:27,657 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-21 03:07:27,657 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 66 [2022-02-21 03:07:27,658 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:07:27,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:07:27,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 45 transitions. [2022-02-21 03:07:27,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:07:27,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 45 transitions. [2022-02-21 03:07:27,662 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 45 transitions. [2022-02-21 03:07:29,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-21 03:07:29,769 INFO L225 Difference]: With dead ends: 53 [2022-02-21 03:07:29,769 INFO L226 Difference]: Without dead ends: 50 [2022-02-21 03:07:29,770 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 167 ImplicationChecksByTransitivity, 10.0s TimeCoverageRelationStatistics Valid=220, Invalid=766, Unknown=6, NotChecked=0, Total=992 [2022-02-21 03:07:29,771 INFO L933 BasicCegarLoop]: 11 mSDtfsCounter, 54 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 172 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 296 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 172 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 103 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-21 03:07:29,771 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 101 Invalid, 296 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 172 Invalid, 0 Unknown, 103 Unchecked, 0.2s Time] [2022-02-21 03:07:29,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-21 03:07:29,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 47. [2022-02-21 03:07:29,783 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:07:29,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:07:29,783 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:07:29,784 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:07:29,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:29,786 INFO L93 Difference]: Finished difference Result 50 states and 53 transitions. [2022-02-21 03:07:29,786 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 53 transitions. [2022-02-21 03:07:29,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:07:29,786 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:07:29,787 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) Second operand 50 states. [2022-02-21 03:07:29,787 INFO L87 Difference]: Start difference. First operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) Second operand 50 states. [2022-02-21 03:07:29,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:07:29,789 INFO L93 Difference]: Finished difference Result 50 states and 53 transitions. [2022-02-21 03:07:29,789 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 53 transitions. [2022-02-21 03:07:29,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:07:29,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:07:29,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:07:29,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:07:29,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 37 states have (on average 1.054054054054054) internal successors, (39), 37 states have internal predecessors, (39), 3 states have call successors, (3), 2 states have call predecessors, (3), 6 states have return successors, (7), 7 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:07:29,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 49 transitions. [2022-02-21 03:07:29,792 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 49 transitions. Word has length 66 [2022-02-21 03:07:29,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:07:29,792 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 49 transitions. [2022-02-21 03:07:29,792 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 1.9090909090909092) internal successors, (42), 18 states have internal predecessors, (42), 5 states have call successors, (6), 1 states have call predecessors, (6), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:07:29,793 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 49 transitions. [2022-02-21 03:07:29,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-02-21 03:07:29,793 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:07:29,794 INFO L514 BasicCegarLoop]: trace histogram [9, 8, 8, 8, 8, 6, 6, 6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:07:29,817 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-02-21 03:07:30,017 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:07:30,017 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [factErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, factErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 1 more)] === [2022-02-21 03:07:30,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:07:30,018 INFO L85 PathProgramCache]: Analyzing trace with hash -401518590, now seen corresponding path program 5 times [2022-02-21 03:07:30,018 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:07:30,018 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [399941555] [2022-02-21 03:07:30,018 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:07:30,018 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:07:30,045 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-21 03:07:30,046 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1283541555] [2022-02-21 03:07:30,046 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-21 03:07:30,046 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:07:30,046 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:07:30,047 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:07:30,070 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-21 03:07:30,121 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2022-02-21 03:07:30,122 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:07:30,123 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 54 conjunts are in the unsatisfiable core [2022-02-21 03:07:30,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:07:30,152 INFO L286 TraceCheckSpWp]: Computing forward predicates...