./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/combinations/gcd_4+newton_3_5.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability 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/combinations/gcd_4+newton_3_5.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-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 ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 0c562931a6d05e325b28cce00e946abdf58c2b9fa526927c821e1aeeb79c8db9 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 19:37:09,235 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 19:37:09,237 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 19:37:09,262 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 19:37:09,262 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 19:37:09,263 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 19:37:09,264 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 19:37:09,265 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 19:37:09,266 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 19:37:09,267 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 19:37:09,268 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 19:37:09,269 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 19:37:09,269 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 19:37:09,270 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 19:37:09,271 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 19:37:09,272 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 19:37:09,273 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 19:37:09,273 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 19:37:09,274 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 19:37:09,276 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 19:37:09,277 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 19:37:09,277 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 19:37:09,278 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 19:37:09,279 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 19:37:09,281 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 19:37:09,281 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 19:37:09,281 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 19:37:09,282 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 19:37:09,282 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 19:37:09,283 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 19:37:09,283 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 19:37:09,283 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 19:37:09,284 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 19:37:09,285 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 19:37:09,285 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 19:37:09,285 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 19:37:09,286 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 19:37:09,286 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 19:37:09,286 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 19:37:09,287 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 19:37:09,288 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 19:37:09,288 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 19:37:09,310 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 19:37:09,311 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 19:37:09,311 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 19:37:09,311 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 19:37:09,311 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 19:37:09,312 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 19:37:09,312 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 19:37:09,312 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 19:37:09,312 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 19:37:09,312 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 19:37:09,312 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 19:37:09,313 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 19:37:09,314 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 19:37:09,314 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 19:37:09,314 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 19:37:09,315 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 19:37:09,315 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 ! call(reach_error())) ) 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 -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 0c562931a6d05e325b28cce00e946abdf58c2b9fa526927c821e1aeeb79c8db9 [2022-02-20 19:37:09,545 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 19:37:09,563 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 19:37:09,566 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 19:37:09,567 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 19:37:09,567 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 19:37:09,568 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/combinations/gcd_4+newton_3_5.i [2022-02-20 19:37:09,641 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/825d53e7c/d76a0ed8909f4e5c9b5231335a7c6242/FLAGdcb9c3679 [2022-02-20 19:37:09,957 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 19:37:09,958 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/gcd_4+newton_3_5.i [2022-02-20 19:37:09,962 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/825d53e7c/d76a0ed8909f4e5c9b5231335a7c6242/FLAGdcb9c3679 [2022-02-20 19:37:10,393 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/825d53e7c/d76a0ed8909f4e5c9b5231335a7c6242 [2022-02-20 19:37:10,394 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 19:37:10,396 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 19:37:10,399 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 19:37:10,399 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 19:37:10,401 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 19:37:10,402 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,404 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2d95a7d3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10, skipping insertion in model container [2022-02-20 19:37:10,404 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,409 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 19:37:10,425 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 19:37:10,587 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/gcd_4+newton_3_5.i[1224,1237] [2022-02-20 19:37:10,607 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/gcd_4+newton_3_5.i[2848,2861] [2022-02-20 19:37:10,608 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 19:37:10,615 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 19:37:10,623 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/gcd_4+newton_3_5.i[1224,1237] [2022-02-20 19:37:10,645 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/gcd_4+newton_3_5.i[2848,2861] [2022-02-20 19:37:10,655 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 19:37:10,664 INFO L208 MainTranslator]: Completed translation [2022-02-20 19:37:10,665 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10 WrapperNode [2022-02-20 19:37:10,665 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 19:37:10,666 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 19:37:10,666 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 19:37:10,666 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 19:37:10,674 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,680 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,710 INFO L137 Inliner]: procedures = 27, calls = 20, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 77 [2022-02-20 19:37:10,711 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 19:37:10,712 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 19:37:10,712 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 19:37:10,712 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 19:37:10,718 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,718 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,728 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,729 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,737 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,743 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,744 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,749 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 19:37:10,750 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 19:37:10,750 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 19:37:10,750 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 19:37:10,752 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (1/1) ... [2022-02-20 19:37:10,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 19:37:10,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:10,782 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-20 19:37:10,789 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-20 19:37:10,815 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 19:37:10,815 INFO L130 BoogieDeclarations]: Found specification of procedure fp [2022-02-20 19:37:10,815 INFO L138 BoogieDeclarations]: Found implementation of procedure fp [2022-02-20 19:37:10,816 INFO L130 BoogieDeclarations]: Found specification of procedure f [2022-02-20 19:37:10,816 INFO L138 BoogieDeclarations]: Found implementation of procedure f [2022-02-20 19:37:10,816 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 19:37:10,816 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 19:37:10,816 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 19:37:10,816 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 19:37:10,816 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 19:37:10,897 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 19:37:10,898 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 19:37:11,160 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 19:37:11,166 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 19:37:11,166 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 19:37:11,168 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 07:37:11 BoogieIcfgContainer [2022-02-20 19:37:11,168 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 19:37:11,169 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 19:37:11,169 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 19:37:11,172 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 19:37:11,182 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 07:37:10" (1/3) ... [2022-02-20 19:37:11,183 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fc817f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 07:37:11, skipping insertion in model container [2022-02-20 19:37:11,183 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 07:37:10" (2/3) ... [2022-02-20 19:37:11,183 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fc817f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 07:37:11, skipping insertion in model container [2022-02-20 19:37:11,183 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 07:37:11" (3/3) ... [2022-02-20 19:37:11,184 INFO L111 eAbstractionObserver]: Analyzing ICFG gcd_4+newton_3_5.i [2022-02-20 19:37:11,188 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 19:37:11,188 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2022-02-20 19:37:11,229 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 19:37:11,240 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=PETRI_NET, 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-20 19:37:11,241 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 19:37:11,261 INFO L276 IsEmpty]: Start isEmpty. Operand has 46 states, 31 states have (on average 1.3870967741935485) internal successors, (43), 33 states have internal predecessors, (43), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 19:37:11,265 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 19:37:11,266 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:11,266 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:11,267 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:11,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:11,271 INFO L85 PathProgramCache]: Analyzing trace with hash -1780387208, now seen corresponding path program 1 times [2022-02-20 19:37:11,280 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:11,281 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [86780574] [2022-02-20 19:37:11,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:11,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:11,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:11,490 INFO L290 TraceCheckUtils]: 0: Hoare triple {49#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {49#true} is VALID [2022-02-20 19:37:11,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {49#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {49#true} is VALID [2022-02-20 19:37:11,494 INFO L290 TraceCheckUtils]: 2: Hoare triple {49#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {51#(and (<= 63 |ULTIMATE.start_main1_~x~0#1|) (= (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) |ULTIMATE.start_main1_~x~0#1|) 0))} is VALID [2022-02-20 19:37:11,496 INFO L290 TraceCheckUtils]: 3: Hoare triple {51#(and (<= 63 |ULTIMATE.start_main1_~x~0#1|) (= (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) |ULTIMATE.start_main1_~x~0#1|) 0))} assume gcd_test_~a#1 < 0;gcd_test_~a#1 := -gcd_test_~a#1; {50#false} is VALID [2022-02-20 19:37:11,496 INFO L290 TraceCheckUtils]: 4: Hoare triple {50#false} assume gcd_test_~b#1 < 0;gcd_test_~b#1 := -gcd_test_~b#1; {50#false} is VALID [2022-02-20 19:37:11,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {50#false} assume 0 == gcd_test_~a#1;gcd_test_#res#1 := gcd_test_~b#1; {50#false} is VALID [2022-02-20 19:37:11,497 INFO L290 TraceCheckUtils]: 6: Hoare triple {50#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {50#false} is VALID [2022-02-20 19:37:11,497 INFO L272 TraceCheckUtils]: 7: Hoare triple {50#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {50#false} is VALID [2022-02-20 19:37:11,497 INFO L290 TraceCheckUtils]: 8: Hoare triple {50#false} ~cond := #in~cond; {50#false} is VALID [2022-02-20 19:37:11,498 INFO L290 TraceCheckUtils]: 9: Hoare triple {50#false} assume 0 == ~cond; {50#false} is VALID [2022-02-20 19:37:11,498 INFO L290 TraceCheckUtils]: 10: Hoare triple {50#false} assume !false; {50#false} is VALID [2022-02-20 19:37:11,499 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-20 19:37:11,500 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:11,500 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [86780574] [2022-02-20 19:37:11,501 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [86780574] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 19:37:11,501 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 19:37:11,501 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 19:37:11,504 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [432287547] [2022-02-20 19:37:11,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 19:37:11,509 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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 11 [2022-02-20 19:37:11,510 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:11,513 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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-20 19:37:11,526 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:11,526 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 19:37:11,527 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:11,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 19:37:11,546 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 19:37:11,549 INFO L87 Difference]: Start difference. First operand has 46 states, 31 states have (on average 1.3870967741935485) internal successors, (43), 33 states have internal predecessors, (43), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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-20 19:37:11,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:11,721 INFO L93 Difference]: Finished difference Result 99 states and 137 transitions. [2022-02-20 19:37:11,722 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 19:37:11,722 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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 11 [2022-02-20 19:37:11,722 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:11,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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-20 19:37:11,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 19:37:11,740 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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-20 19:37:11,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 137 transitions. [2022-02-20 19:37:11,746 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 137 transitions. [2022-02-20 19:37:11,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:11,888 INFO L225 Difference]: With dead ends: 99 [2022-02-20 19:37:11,888 INFO L226 Difference]: Without dead ends: 46 [2022-02-20 19:37:11,891 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-20 19:37:11,894 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 13 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:11,897 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 100 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 19:37:11,908 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-02-20 19:37:11,922 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 39. [2022-02-20 19:37:11,922 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:11,923 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:11,924 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:11,925 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:11,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:11,930 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-02-20 19:37:11,930 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-02-20 19:37:11,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:11,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:11,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-02-20 19:37:11,933 INFO L87 Difference]: Start difference. First operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-02-20 19:37:11,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:11,937 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-02-20 19:37:11,937 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-02-20 19:37:11,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:11,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:11,939 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:11,939 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:11,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 25 states have (on average 1.2) internal successors, (30), 27 states have internal predecessors, (30), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:11,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 47 transitions. [2022-02-20 19:37:11,946 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 47 transitions. Word has length 11 [2022-02-20 19:37:11,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:11,947 INFO L470 AbstractCegarLoop]: Abstraction has 39 states and 47 transitions. [2022-02-20 19:37:11,947 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 3 states have internal predecessors, (10), 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-20 19:37:11,949 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 47 transitions. [2022-02-20 19:37:11,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 19:37:11,952 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:11,953 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:11,953 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 19:37:11,953 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:11,955 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:11,955 INFO L85 PathProgramCache]: Analyzing trace with hash 413718792, now seen corresponding path program 1 times [2022-02-20 19:37:11,955 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:11,956 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1726950367] [2022-02-20 19:37:11,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:11,960 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:11,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:12,012 INFO L290 TraceCheckUtils]: 0: Hoare triple {336#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {336#true} is VALID [2022-02-20 19:37:12,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {336#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {336#true} is VALID [2022-02-20 19:37:12,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {336#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {338#(= (+ |ULTIMATE.start_gcd_test_~b#1| (- 18)) 0)} is VALID [2022-02-20 19:37:12,014 INFO L290 TraceCheckUtils]: 3: Hoare triple {338#(= (+ |ULTIMATE.start_gcd_test_~b#1| (- 18)) 0)} assume !(gcd_test_~a#1 < 0); {338#(= (+ |ULTIMATE.start_gcd_test_~b#1| (- 18)) 0)} is VALID [2022-02-20 19:37:12,014 INFO L290 TraceCheckUtils]: 4: Hoare triple {338#(= (+ |ULTIMATE.start_gcd_test_~b#1| (- 18)) 0)} assume gcd_test_~b#1 < 0;gcd_test_~b#1 := -gcd_test_~b#1; {337#false} is VALID [2022-02-20 19:37:12,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {337#false} assume !(0 == gcd_test_~a#1); {337#false} is VALID [2022-02-20 19:37:12,014 INFO L290 TraceCheckUtils]: 6: Hoare triple {337#false} assume !(0 != gcd_test_~b#1); {337#false} is VALID [2022-02-20 19:37:12,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {337#false} gcd_test_#res#1 := gcd_test_~a#1; {337#false} is VALID [2022-02-20 19:37:12,015 INFO L290 TraceCheckUtils]: 8: Hoare triple {337#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {337#false} is VALID [2022-02-20 19:37:12,015 INFO L272 TraceCheckUtils]: 9: Hoare triple {337#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {337#false} is VALID [2022-02-20 19:37:12,015 INFO L290 TraceCheckUtils]: 10: Hoare triple {337#false} ~cond := #in~cond; {337#false} is VALID [2022-02-20 19:37:12,015 INFO L290 TraceCheckUtils]: 11: Hoare triple {337#false} assume 0 == ~cond; {337#false} is VALID [2022-02-20 19:37:12,016 INFO L290 TraceCheckUtils]: 12: Hoare triple {337#false} assume !false; {337#false} is VALID [2022-02-20 19:37:12,016 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-20 19:37:12,016 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:12,017 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1726950367] [2022-02-20 19:37:12,017 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1726950367] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 19:37:12,017 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 19:37:12,017 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 19:37:12,017 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [288705608] [2022-02-20 19:37:12,018 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 19:37:12,019 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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 13 [2022-02-20 19:37:12,019 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:12,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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-20 19:37:12,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:12,029 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 19:37:12,029 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:12,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 19:37:12,031 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 19:37:12,031 INFO L87 Difference]: Start difference. First operand 39 states and 47 transitions. Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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-20 19:37:12,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,095 INFO L93 Difference]: Finished difference Result 55 states and 68 transitions. [2022-02-20 19:37:12,095 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 19:37:12,096 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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 13 [2022-02-20 19:37:12,096 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:12,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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-20 19:37:12,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2022-02-20 19:37:12,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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-20 19:37:12,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2022-02-20 19:37:12,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 68 transitions. [2022-02-20 19:37:12,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:12,158 INFO L225 Difference]: With dead ends: 55 [2022-02-20 19:37:12,158 INFO L226 Difference]: Without dead ends: 41 [2022-02-20 19:37:12,161 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-20 19:37:12,163 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 4 mSDsluCounter, 38 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:12,164 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 80 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 19:37:12,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-02-20 19:37:12,173 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-02-20 19:37:12,173 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:12,175 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,175 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,175 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,179 INFO L93 Difference]: Finished difference Result 41 states and 49 transitions. [2022-02-20 19:37:12,179 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-02-20 19:37:12,183 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:12,183 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:12,184 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 41 states. [2022-02-20 19:37:12,185 INFO L87 Difference]: Start difference. First operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 41 states. [2022-02-20 19:37:12,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,189 INFO L93 Difference]: Finished difference Result 41 states and 49 transitions. [2022-02-20 19:37:12,189 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-02-20 19:37:12,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:12,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:12,191 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:12,191 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:12,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 27 states have (on average 1.1851851851851851) internal successors, (32), 29 states have internal predecessors, (32), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-02-20 19:37:12,196 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 13 [2022-02-20 19:37:12,196 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:12,197 INFO L470 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-02-20 19:37:12,197 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 3 states have internal predecessors, (12), 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-20 19:37:12,197 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-02-20 19:37:12,198 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 19:37:12,198 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:12,198 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:12,198 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 19:37:12,198 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:12,199 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:12,199 INFO L85 PathProgramCache]: Analyzing trace with hash -1714945339, now seen corresponding path program 1 times [2022-02-20 19:37:12,199 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:12,199 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [771804439] [2022-02-20 19:37:12,200 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:12,200 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:12,226 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:12,231 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1812767594] [2022-02-20 19:37:12,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:12,232 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:12,232 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:12,246 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-20 19:37:12,271 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-20 19:37:12,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:12,296 INFO L263 TraceCheckSpWp]: Trace formula consists of 64 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 19:37:12,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:12,322 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 19:37:12,553 INFO L290 TraceCheckUtils]: 0: Hoare triple {555#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {555#true} is VALID [2022-02-20 19:37:12,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {555#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {555#true} is VALID [2022-02-20 19:37:12,554 INFO L290 TraceCheckUtils]: 2: Hoare triple {555#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:12,554 INFO L290 TraceCheckUtils]: 3: Hoare triple {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 < 0); {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:12,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~b#1 < 0); {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:12,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(0 == gcd_test_~a#1); {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:12,557 INFO L290 TraceCheckUtils]: 6: Hoare triple {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:12,557 INFO L290 TraceCheckUtils]: 7: Hoare triple {566#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {582#(<= (+ |ULTIMATE.start_gcd_test_~b#1| 45) 0)} is VALID [2022-02-20 19:37:12,558 INFO L290 TraceCheckUtils]: 8: Hoare triple {582#(<= (+ |ULTIMATE.start_gcd_test_~b#1| 45) 0)} assume !(0 != gcd_test_~b#1); {556#false} is VALID [2022-02-20 19:37:12,558 INFO L290 TraceCheckUtils]: 9: Hoare triple {556#false} gcd_test_#res#1 := gcd_test_~a#1; {556#false} is VALID [2022-02-20 19:37:12,558 INFO L290 TraceCheckUtils]: 10: Hoare triple {556#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {556#false} is VALID [2022-02-20 19:37:12,558 INFO L272 TraceCheckUtils]: 11: Hoare triple {556#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {556#false} is VALID [2022-02-20 19:37:12,558 INFO L290 TraceCheckUtils]: 12: Hoare triple {556#false} ~cond := #in~cond; {556#false} is VALID [2022-02-20 19:37:12,559 INFO L290 TraceCheckUtils]: 13: Hoare triple {556#false} assume 0 == ~cond; {556#false} is VALID [2022-02-20 19:37:12,563 INFO L290 TraceCheckUtils]: 14: Hoare triple {556#false} assume !false; {556#false} is VALID [2022-02-20 19:37:12,564 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:12,564 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 19:37:12,743 INFO L290 TraceCheckUtils]: 14: Hoare triple {556#false} assume !false; {556#false} is VALID [2022-02-20 19:37:12,743 INFO L290 TraceCheckUtils]: 13: Hoare triple {556#false} assume 0 == ~cond; {556#false} is VALID [2022-02-20 19:37:12,743 INFO L290 TraceCheckUtils]: 12: Hoare triple {556#false} ~cond := #in~cond; {556#false} is VALID [2022-02-20 19:37:12,744 INFO L272 TraceCheckUtils]: 11: Hoare triple {556#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {556#false} is VALID [2022-02-20 19:37:12,746 INFO L290 TraceCheckUtils]: 10: Hoare triple {556#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {556#false} is VALID [2022-02-20 19:37:12,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {556#false} gcd_test_#res#1 := gcd_test_~a#1; {556#false} is VALID [2022-02-20 19:37:12,747 INFO L290 TraceCheckUtils]: 8: Hoare triple {622#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} assume !(0 != gcd_test_~b#1); {556#false} is VALID [2022-02-20 19:37:12,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {622#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:12,748 INFO L290 TraceCheckUtils]: 6: Hoare triple {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !!(0 != gcd_test_~b#1); {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:12,748 INFO L290 TraceCheckUtils]: 5: Hoare triple {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(0 == gcd_test_~a#1); {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:12,749 INFO L290 TraceCheckUtils]: 4: Hoare triple {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~b#1 < 0); {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:12,751 INFO L290 TraceCheckUtils]: 3: Hoare triple {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~a#1 < 0); {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:12,752 INFO L290 TraceCheckUtils]: 2: Hoare triple {555#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {626#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:12,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {555#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {555#true} is VALID [2022-02-20 19:37:12,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {555#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {555#true} is VALID [2022-02-20 19:37:12,754 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:12,754 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:12,754 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [771804439] [2022-02-20 19:37:12,754 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 19:37:12,754 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1812767594] [2022-02-20 19:37:12,756 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1812767594] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 19:37:12,756 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 19:37:12,756 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2022-02-20 19:37:12,759 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1732085056] [2022-02-20 19:37:12,759 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 19:37:12,759 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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 15 [2022-02-20 19:37:12,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:12,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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-20 19:37:12,780 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:12,780 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 19:37:12,781 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:12,781 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 19:37:12,781 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 19:37:12,782 INFO L87 Difference]: Start difference. First operand 41 states and 49 transitions. Second operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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-20 19:37:12,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,901 INFO L93 Difference]: Finished difference Result 58 states and 71 transitions. [2022-02-20 19:37:12,901 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 19:37:12,902 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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 15 [2022-02-20 19:37:12,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:12,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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-20 19:37:12,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 68 transitions. [2022-02-20 19:37:12,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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-20 19:37:12,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 68 transitions. [2022-02-20 19:37:12,905 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 68 transitions. [2022-02-20 19:37:12,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:12,955 INFO L225 Difference]: With dead ends: 58 [2022-02-20 19:37:12,955 INFO L226 Difference]: Without dead ends: 45 [2022-02-20 19:37:12,955 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 19:37:12,956 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 0 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:12,956 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 154 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 19:37:12,957 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-02-20 19:37:12,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2022-02-20 19:37:12,962 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:12,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,962 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,963 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,965 INFO L93 Difference]: Finished difference Result 45 states and 53 transitions. [2022-02-20 19:37:12,965 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-02-20 19:37:12,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:12,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:12,966 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-02-20 19:37:12,966 INFO L87 Difference]: Start difference. First operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-02-20 19:37:12,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:12,968 INFO L93 Difference]: Finished difference Result 45 states and 53 transitions. [2022-02-20 19:37:12,968 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-02-20 19:37:12,968 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:12,968 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:12,968 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:12,969 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:12,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 31 states have (on average 1.1612903225806452) internal successors, (36), 33 states have internal predecessors, (36), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:12,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 53 transitions. [2022-02-20 19:37:12,971 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 53 transitions. Word has length 15 [2022-02-20 19:37:12,971 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:12,971 INFO L470 AbstractCegarLoop]: Abstraction has 45 states and 53 transitions. [2022-02-20 19:37:12,971 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 6 states have internal predecessors, (21), 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-20 19:37:12,971 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-02-20 19:37:12,972 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 19:37:12,972 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:12,972 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:12,992 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-20 19:37:13,191 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-20 19:37:13,191 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:13,192 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:13,192 INFO L85 PathProgramCache]: Analyzing trace with hash 1992824063, now seen corresponding path program 1 times [2022-02-20 19:37:13,192 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:13,192 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [772786345] [2022-02-20 19:37:13,192 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:13,192 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:13,208 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:13,211 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [451892987] [2022-02-20 19:37:13,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:13,212 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:13,212 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:13,222 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-20 19:37:13,223 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-20 19:37:13,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:13,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 19:37:13,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:13,286 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 19:37:13,687 INFO L290 TraceCheckUtils]: 0: Hoare triple {880#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {880#true} is VALID [2022-02-20 19:37:13,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {880#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {880#true} is VALID [2022-02-20 19:37:13,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {880#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,689 INFO L290 TraceCheckUtils]: 3: Hoare triple {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 < 0); {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,689 INFO L290 TraceCheckUtils]: 4: Hoare triple {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~b#1 < 0); {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(0 == gcd_test_~a#1); {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,692 INFO L290 TraceCheckUtils]: 6: Hoare triple {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,692 INFO L290 TraceCheckUtils]: 7: Hoare triple {891#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {907#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {907#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {907#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,694 INFO L290 TraceCheckUtils]: 9: Hoare triple {907#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {914#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,694 INFO L290 TraceCheckUtils]: 10: Hoare triple {914#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {914#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:13,695 INFO L290 TraceCheckUtils]: 11: Hoare triple {914#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {921#(<= (div (+ (- 45) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 2)) 18)} is VALID [2022-02-20 19:37:13,695 INFO L290 TraceCheckUtils]: 12: Hoare triple {921#(<= (div (+ (- 45) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 2)) 18)} assume !(0 != gcd_test_~b#1); {881#false} is VALID [2022-02-20 19:37:13,695 INFO L290 TraceCheckUtils]: 13: Hoare triple {881#false} gcd_test_#res#1 := gcd_test_~a#1; {881#false} is VALID [2022-02-20 19:37:13,695 INFO L290 TraceCheckUtils]: 14: Hoare triple {881#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {881#false} is VALID [2022-02-20 19:37:13,696 INFO L272 TraceCheckUtils]: 15: Hoare triple {881#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {881#false} is VALID [2022-02-20 19:37:13,696 INFO L290 TraceCheckUtils]: 16: Hoare triple {881#false} ~cond := #in~cond; {881#false} is VALID [2022-02-20 19:37:13,696 INFO L290 TraceCheckUtils]: 17: Hoare triple {881#false} assume 0 == ~cond; {881#false} is VALID [2022-02-20 19:37:13,696 INFO L290 TraceCheckUtils]: 18: Hoare triple {881#false} assume !false; {881#false} is VALID [2022-02-20 19:37:13,696 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:13,696 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 19:37:13,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {881#false} assume !false; {881#false} is VALID [2022-02-20 19:37:13,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {881#false} assume 0 == ~cond; {881#false} is VALID [2022-02-20 19:37:13,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {881#false} ~cond := #in~cond; {881#false} is VALID [2022-02-20 19:37:13,865 INFO L272 TraceCheckUtils]: 15: Hoare triple {881#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {881#false} is VALID [2022-02-20 19:37:13,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {881#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {881#false} is VALID [2022-02-20 19:37:13,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {881#false} gcd_test_#res#1 := gcd_test_~a#1; {881#false} is VALID [2022-02-20 19:37:13,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {961#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} assume !(0 != gcd_test_~b#1); {881#false} is VALID [2022-02-20 19:37:13,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {965#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {961#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:13,866 INFO L290 TraceCheckUtils]: 10: Hoare triple {965#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !!(0 != gcd_test_~b#1); {965#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,867 INFO L290 TraceCheckUtils]: 9: Hoare triple {972#(< (* |ULTIMATE.start_gcd_test_~b#1| 2) |ULTIMATE.start_gcd_test_~a#1|)} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {965#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {972#(< (* |ULTIMATE.start_gcd_test_~b#1| 2) |ULTIMATE.start_gcd_test_~a#1|)} assume !!(0 != gcd_test_~b#1); {972#(< (* |ULTIMATE.start_gcd_test_~b#1| 2) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {972#(< (* |ULTIMATE.start_gcd_test_~b#1| 2) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,868 INFO L290 TraceCheckUtils]: 6: Hoare triple {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} assume !!(0 != gcd_test_~b#1); {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} assume !(0 == gcd_test_~a#1); {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,869 INFO L290 TraceCheckUtils]: 4: Hoare triple {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~b#1 < 0); {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,869 INFO L290 TraceCheckUtils]: 3: Hoare triple {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~a#1 < 0); {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {880#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {979#(< (* |ULTIMATE.start_gcd_test_~b#1| 3) |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:13,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {880#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {880#true} is VALID [2022-02-20 19:37:13,870 INFO L290 TraceCheckUtils]: 0: Hoare triple {880#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {880#true} is VALID [2022-02-20 19:37:13,870 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:13,870 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:13,870 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [772786345] [2022-02-20 19:37:13,871 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 19:37:13,871 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [451892987] [2022-02-20 19:37:13,871 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [451892987] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 19:37:13,871 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 19:37:13,871 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-02-20 19:37:13,871 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [384903564] [2022-02-20 19:37:13,871 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 19:37:13,872 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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 19 [2022-02-20 19:37:13,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:13,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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-20 19:37:13,915 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-20 19:37:13,915 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 19:37:13,915 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:13,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 19:37:13,916 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-02-20 19:37:13,916 INFO L87 Difference]: Start difference. First operand 45 states and 53 transitions. Second operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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-20 19:37:14,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:14,101 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-02-20 19:37:14,101 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 19:37:14,101 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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 19 [2022-02-20 19:37:14,102 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:14,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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-20 19:37:14,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-02-20 19:37:14,103 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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-20 19:37:14,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-02-20 19:37:14,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2022-02-20 19:37:14,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:14,159 INFO L225 Difference]: With dead ends: 60 [2022-02-20 19:37:14,159 INFO L226 Difference]: Without dead ends: 47 [2022-02-20 19:37:14,159 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2022-02-20 19:37:14,159 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 149 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 190 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:14,160 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 190 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 19:37:14,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-02-20 19:37:14,167 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-02-20 19:37:14,168 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:14,168 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:14,168 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:14,169 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:14,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:14,173 INFO L93 Difference]: Finished difference Result 47 states and 55 transitions. [2022-02-20 19:37:14,173 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2022-02-20 19:37:14,173 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:14,173 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:14,174 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 47 states. [2022-02-20 19:37:14,174 INFO L87 Difference]: Start difference. First operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 47 states. [2022-02-20 19:37:14,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:14,180 INFO L93 Difference]: Finished difference Result 47 states and 55 transitions. [2022-02-20 19:37:14,180 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2022-02-20 19:37:14,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:14,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:14,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:14,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:14,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 35 states have internal predecessors, (38), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:14,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 55 transitions. [2022-02-20 19:37:14,183 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 55 transitions. Word has length 19 [2022-02-20 19:37:14,183 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:14,183 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 55 transitions. [2022-02-20 19:37:14,183 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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-20 19:37:14,184 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2022-02-20 19:37:14,184 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 19:37:14,184 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:14,184 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:14,204 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 19:37:14,401 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-20 19:37:14,401 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:14,402 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:14,402 INFO L85 PathProgramCache]: Analyzing trace with hash -626272964, now seen corresponding path program 2 times [2022-02-20 19:37:14,402 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:14,402 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1234497324] [2022-02-20 19:37:14,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:14,402 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:14,433 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:14,433 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [185707674] [2022-02-20 19:37:14,433 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 19:37:14,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:14,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:14,435 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-20 19:37:14,453 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-20 19:37:14,475 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 19:37:14,475 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 19:37:14,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 19:37:14,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:14,506 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 19:37:41,564 INFO L290 TraceCheckUtils]: 0: Hoare triple {1247#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {1247#true} is VALID [2022-02-20 19:37:41,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {1247#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {1247#true} is VALID [2022-02-20 19:37:41,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {1247#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} is VALID [2022-02-20 19:37:41,566 INFO L290 TraceCheckUtils]: 3: Hoare triple {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} assume !(gcd_test_~a#1 < 0); {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} is VALID [2022-02-20 19:37:41,577 INFO L290 TraceCheckUtils]: 4: Hoare triple {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} assume !(gcd_test_~b#1 < 0); {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} is VALID [2022-02-20 19:37:41,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} assume !(0 == gcd_test_~a#1); {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} is VALID [2022-02-20 19:37:41,579 INFO L290 TraceCheckUtils]: 6: Hoare triple {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} assume !!(0 != gcd_test_~b#1); {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} is VALID [2022-02-20 19:37:41,579 INFO L290 TraceCheckUtils]: 7: Hoare triple {1258#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= |ULTIMATE.start_gcd_test_~a#1| 63))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1274#(and (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:41,580 INFO L290 TraceCheckUtils]: 8: Hoare triple {1274#(and (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} assume !!(0 != gcd_test_~b#1); {1274#(and (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:41,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {1274#(and (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1281#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2)) 63))} is VALID [2022-02-20 19:37:41,581 INFO L290 TraceCheckUtils]: 10: Hoare triple {1281#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2)) 63))} assume !!(0 != gcd_test_~b#1); {1281#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2)) 63))} is VALID [2022-02-20 19:37:41,582 INFO L290 TraceCheckUtils]: 11: Hoare triple {1281#(and (<= 18 |ULTIMATE.start_gcd_test_~b#1|) (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2)) 63))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1288#(and (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3)) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:41,582 INFO L290 TraceCheckUtils]: 12: Hoare triple {1288#(and (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3)) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} assume !!(0 != gcd_test_~b#1); {1288#(and (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3)) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:41,583 INFO L290 TraceCheckUtils]: 13: Hoare triple {1288#(and (<= (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3)) 63) (<= 18 |ULTIMATE.start_gcd_test_~b#1|))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1295#(<= 18 (div (+ |ULTIMATE.start_gcd_test_~b#1| 45) 3))} is VALID [2022-02-20 19:37:41,583 INFO L290 TraceCheckUtils]: 14: Hoare triple {1295#(<= 18 (div (+ |ULTIMATE.start_gcd_test_~b#1| 45) 3))} assume !(0 != gcd_test_~b#1); {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {1248#false} gcd_test_#res#1 := gcd_test_~a#1; {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L290 TraceCheckUtils]: 16: Hoare triple {1248#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L272 TraceCheckUtils]: 17: Hoare triple {1248#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L290 TraceCheckUtils]: 18: Hoare triple {1248#false} ~cond := #in~cond; {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L290 TraceCheckUtils]: 19: Hoare triple {1248#false} assume 0 == ~cond; {1248#false} is VALID [2022-02-20 19:37:41,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {1248#false} assume !false; {1248#false} is VALID [2022-02-20 19:37:41,585 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:41,585 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 19:37:41,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {1248#false} assume !false; {1248#false} is VALID [2022-02-20 19:37:41,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {1248#false} assume 0 == ~cond; {1248#false} is VALID [2022-02-20 19:37:41,774 INFO L290 TraceCheckUtils]: 18: Hoare triple {1248#false} ~cond := #in~cond; {1248#false} is VALID [2022-02-20 19:37:41,774 INFO L272 TraceCheckUtils]: 17: Hoare triple {1248#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {1248#false} is VALID [2022-02-20 19:37:41,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {1248#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {1248#false} is VALID [2022-02-20 19:37:41,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {1248#false} gcd_test_#res#1 := gcd_test_~a#1; {1248#false} is VALID [2022-02-20 19:37:41,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {1335#(not (<= |ULTIMATE.start_gcd_test_~b#1| 0))} assume !(0 != gcd_test_~b#1); {1248#false} is VALID [2022-02-20 19:37:41,776 INFO L290 TraceCheckUtils]: 13: Hoare triple {1339#(< |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_gcd_test_~b#1|)} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1335#(not (<= |ULTIMATE.start_gcd_test_~b#1| 0))} is VALID [2022-02-20 19:37:41,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {1339#(< |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_gcd_test_~b#1|)} assume !!(0 != gcd_test_~b#1); {1339#(< |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_gcd_test_~b#1|)} is VALID [2022-02-20 19:37:41,778 INFO L290 TraceCheckUtils]: 11: Hoare triple {1346#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1339#(< |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_gcd_test_~b#1|)} is VALID [2022-02-20 19:37:41,784 INFO L290 TraceCheckUtils]: 10: Hoare triple {1346#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))} assume !!(0 != gcd_test_~b#1); {1346#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))} is VALID [2022-02-20 19:37:41,785 INFO L290 TraceCheckUtils]: 9: Hoare triple {1353#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1346#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))} is VALID [2022-02-20 19:37:41,785 INFO L290 TraceCheckUtils]: 8: Hoare triple {1353#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))} assume !!(0 != gcd_test_~b#1); {1353#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))} is VALID [2022-02-20 19:37:41,786 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1353#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))} is VALID [2022-02-20 19:37:41,786 INFO L290 TraceCheckUtils]: 6: Hoare triple {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} assume !!(0 != gcd_test_~b#1); {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} is VALID [2022-02-20 19:37:41,786 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} assume !(0 == gcd_test_~a#1); {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} is VALID [2022-02-20 19:37:41,787 INFO L290 TraceCheckUtils]: 4: Hoare triple {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} assume !(gcd_test_~b#1 < 0); {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} is VALID [2022-02-20 19:37:41,787 INFO L290 TraceCheckUtils]: 3: Hoare triple {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} assume !(gcd_test_~a#1 < 0); {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} is VALID [2022-02-20 19:37:41,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {1247#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {1360#(< |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 4))} is VALID [2022-02-20 19:37:41,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {1247#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {1247#true} is VALID [2022-02-20 19:37:41,788 INFO L290 TraceCheckUtils]: 0: Hoare triple {1247#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {1247#true} is VALID [2022-02-20 19:37:41,788 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:41,788 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:41,788 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1234497324] [2022-02-20 19:37:41,788 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 19:37:41,789 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [185707674] [2022-02-20 19:37:41,789 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [185707674] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 19:37:41,789 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 19:37:41,789 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-02-20 19:37:41,789 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [721904878] [2022-02-20 19:37:41,789 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 19:37:41,790 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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 21 [2022-02-20 19:37:41,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:41,790 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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-20 19:37:41,813 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-20 19:37:41,813 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 19:37:41,813 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:41,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 19:37:41,814 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-02-20 19:37:41,814 INFO L87 Difference]: Start difference. First operand 47 states and 55 transitions. Second operand has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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-20 19:37:42,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:42,104 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-02-20 19:37:42,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 19:37:42,105 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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 21 [2022-02-20 19:37:42,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:42,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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-20 19:37:42,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-02-20 19:37:42,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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-20 19:37:42,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-02-20 19:37:42,107 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 83 transitions. [2022-02-20 19:37:42,166 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:42,167 INFO L225 Difference]: With dead ends: 68 [2022-02-20 19:37:42,167 INFO L226 Difference]: Without dead ends: 53 [2022-02-20 19:37:42,168 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=65, Invalid=117, Unknown=0, NotChecked=0, Total=182 [2022-02-20 19:37:42,168 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 7 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 264 SdHoareTripleChecker+Invalid, 83 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:42,168 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 264 Invalid, 83 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 19:37:42,169 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-02-20 19:37:42,182 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-02-20 19:37:42,183 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:42,183 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:42,183 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:42,183 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:42,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:42,185 INFO L93 Difference]: Finished difference Result 53 states and 62 transitions. [2022-02-20 19:37:42,185 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 62 transitions. [2022-02-20 19:37:42,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:42,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:42,186 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-02-20 19:37:42,186 INFO L87 Difference]: Start difference. First operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-02-20 19:37:42,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:42,188 INFO L93 Difference]: Finished difference Result 53 states and 62 transitions. [2022-02-20 19:37:42,188 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 62 transitions. [2022-02-20 19:37:42,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:42,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:42,188 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:42,188 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:42,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 39 states have (on average 1.1538461538461537) internal successors, (45), 41 states have internal predecessors, (45), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 19:37:42,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 62 transitions. [2022-02-20 19:37:42,190 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 62 transitions. Word has length 21 [2022-02-20 19:37:42,190 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:42,190 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 62 transitions. [2022-02-20 19:37:42,191 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 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-20 19:37:42,191 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 62 transitions. [2022-02-20 19:37:42,191 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 19:37:42,191 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:42,191 INFO L514 BasicCegarLoop]: trace histogram [5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:42,208 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-20 19:37:42,407 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-20 19:37:42,407 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:42,408 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:42,408 INFO L85 PathProgramCache]: Analyzing trace with hash -1120707465, now seen corresponding path program 3 times [2022-02-20 19:37:42,408 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:42,408 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1102249972] [2022-02-20 19:37:42,408 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:42,408 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:42,437 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:42,437 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1384810071] [2022-02-20 19:37:42,437 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 19:37:42,437 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:42,438 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:42,439 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-20 19:37:42,439 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-20 19:37:42,483 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 19:37:42,483 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 19:37:42,484 INFO L263 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 19:37:42,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:42,495 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 19:37:42,755 INFO L290 TraceCheckUtils]: 0: Hoare triple {1661#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {1661#true} is VALID [2022-02-20 19:37:42,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {1661#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {1661#true} is VALID [2022-02-20 19:37:42,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {1661#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,757 INFO L290 TraceCheckUtils]: 3: Hoare triple {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 < 0); {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,757 INFO L290 TraceCheckUtils]: 4: Hoare triple {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~b#1 < 0); {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(0 == gcd_test_~a#1); {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,758 INFO L290 TraceCheckUtils]: 6: Hoare triple {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,758 INFO L290 TraceCheckUtils]: 7: Hoare triple {1672#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (<= |ULTIMATE.start_gcd_test_~a#1| |ULTIMATE.start_main1_~x~0#1|) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,759 INFO L290 TraceCheckUtils]: 10: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,760 INFO L290 TraceCheckUtils]: 11: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,760 INFO L290 TraceCheckUtils]: 12: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:42,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {1688#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1707#(and (= |ULTIMATE.start_gcd_test_~b#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)) (= |ULTIMATE.start_main1_~x~0#1| 63))} is VALID [2022-02-20 19:37:42,761 INFO L290 TraceCheckUtils]: 14: Hoare triple {1707#(and (= |ULTIMATE.start_gcd_test_~b#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)) (= |ULTIMATE.start_main1_~x~0#1| 63))} assume !!(0 != gcd_test_~b#1); {1707#(and (= |ULTIMATE.start_gcd_test_~b#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)) (= |ULTIMATE.start_main1_~x~0#1| 63))} is VALID [2022-02-20 19:37:42,762 INFO L290 TraceCheckUtils]: 15: Hoare triple {1707#(and (= |ULTIMATE.start_gcd_test_~b#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)) (= |ULTIMATE.start_main1_~x~0#1| 63))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1714#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)))} is VALID [2022-02-20 19:37:42,762 INFO L290 TraceCheckUtils]: 16: Hoare triple {1714#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)))} assume !(0 != gcd_test_~b#1); {1718#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~a#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)))} is VALID [2022-02-20 19:37:42,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {1718#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= |ULTIMATE.start_gcd_test_~a#1| (+ (* |ULTIMATE.start_gcd_test_~a#1| (- 1)) 18)))} gcd_test_#res#1 := gcd_test_~a#1; {1722#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= 9 |ULTIMATE.start_gcd_test_#res#1|))} is VALID [2022-02-20 19:37:42,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {1722#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= 9 |ULTIMATE.start_gcd_test_#res#1|))} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {1726#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= 9 |ULTIMATE.start_main1_~g~0#1|))} is VALID [2022-02-20 19:37:42,764 INFO L272 TraceCheckUtils]: 19: Hoare triple {1726#(and (= |ULTIMATE.start_main1_~x~0#1| 63) (= 9 |ULTIMATE.start_main1_~g~0#1|))} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {1730#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 19:37:42,764 INFO L290 TraceCheckUtils]: 20: Hoare triple {1730#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1734#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 19:37:42,764 INFO L290 TraceCheckUtils]: 21: Hoare triple {1734#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1662#false} is VALID [2022-02-20 19:37:42,764 INFO L290 TraceCheckUtils]: 22: Hoare triple {1662#false} assume !false; {1662#false} is VALID [2022-02-20 19:37:42,765 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 0 proven. 19 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 19:37:42,765 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 19:37:43,362 INFO L290 TraceCheckUtils]: 22: Hoare triple {1662#false} assume !false; {1662#false} is VALID [2022-02-20 19:37:43,363 INFO L290 TraceCheckUtils]: 21: Hoare triple {1734#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1662#false} is VALID [2022-02-20 19:37:43,363 INFO L290 TraceCheckUtils]: 20: Hoare triple {1730#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1734#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 19:37:43,364 INFO L272 TraceCheckUtils]: 19: Hoare triple {1750#(= (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_main1_~g~0#1|) 0)} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {1730#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 19:37:43,364 INFO L290 TraceCheckUtils]: 18: Hoare triple {1754#(= (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_#res#1|) 0)} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {1750#(= (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_main1_~g~0#1|) 0)} is VALID [2022-02-20 19:37:43,364 INFO L290 TraceCheckUtils]: 17: Hoare triple {1758#(= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|))} gcd_test_#res#1 := gcd_test_~a#1; {1754#(= (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_#res#1|) 0)} is VALID [2022-02-20 19:37:43,365 INFO L290 TraceCheckUtils]: 16: Hoare triple {1762#(or (not (= |ULTIMATE.start_gcd_test_~b#1| 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} assume !(0 != gcd_test_~b#1); {1758#(= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|))} is VALID [2022-02-20 19:37:43,365 INFO L290 TraceCheckUtils]: 15: Hoare triple {1766#(or (not (= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| (- 1))) 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1762#(or (not (= |ULTIMATE.start_gcd_test_~b#1| 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} is VALID [2022-02-20 19:37:43,365 INFO L290 TraceCheckUtils]: 14: Hoare triple {1766#(or (not (= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| (- 1))) 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} assume !!(0 != gcd_test_~b#1); {1766#(or (not (= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| (- 1))) 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} is VALID [2022-02-20 19:37:43,368 INFO L290 TraceCheckUtils]: 13: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {1766#(or (not (= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| (- 1))) 0)) (= 0 (mod |ULTIMATE.start_main1_~x~0#1| |ULTIMATE.start_gcd_test_~a#1|)))} is VALID [2022-02-20 19:37:43,369 INFO L290 TraceCheckUtils]: 12: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !!(0 != gcd_test_~b#1); {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,369 INFO L290 TraceCheckUtils]: 11: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,370 INFO L290 TraceCheckUtils]: 10: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !!(0 != gcd_test_~b#1); {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !!(0 != gcd_test_~b#1); {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {1773#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,371 INFO L290 TraceCheckUtils]: 6: Hoare triple {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !!(0 != gcd_test_~b#1); {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !(0 == gcd_test_~a#1); {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,372 INFO L290 TraceCheckUtils]: 4: Hoare triple {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !(gcd_test_~b#1 < 0); {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,372 INFO L290 TraceCheckUtils]: 3: Hoare triple {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} assume !(gcd_test_~a#1 < 0); {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {1661#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {1792#(or (= (mod |ULTIMATE.start_main1_~x~0#1| (div (- |ULTIMATE.start_gcd_test_~b#1|) (- 2))) 0) (not (< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (not (= (mod |ULTIMATE.start_gcd_test_~b#1| 2) 0)))} is VALID [2022-02-20 19:37:43,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {1661#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {1661#true} is VALID [2022-02-20 19:37:43,373 INFO L290 TraceCheckUtils]: 0: Hoare triple {1661#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {1661#true} is VALID [2022-02-20 19:37:43,373 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 19:37:43,373 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:43,373 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1102249972] [2022-02-20 19:37:43,373 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 19:37:43,373 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1384810071] [2022-02-20 19:37:43,373 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1384810071] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 19:37:43,373 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 19:37:43,374 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 18 [2022-02-20 19:37:43,374 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [879519018] [2022-02-20 19:37:43,374 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 19:37:43,374 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 19:37:43,374 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:43,374 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 19:37:43,411 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-20 19:37:43,411 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 19:37:43,411 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:43,412 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 19:37:43,412 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=256, Unknown=0, NotChecked=0, Total=306 [2022-02-20 19:37:43,412 INFO L87 Difference]: Start difference. First operand 53 states and 62 transitions. Second operand has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 19:37:46,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:46,001 INFO L93 Difference]: Finished difference Result 81 states and 101 transitions. [2022-02-20 19:37:46,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 19:37:46,002 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 19:37:46,002 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:46,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 19:37:46,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 94 transitions. [2022-02-20 19:37:46,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 19:37:46,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 94 transitions. [2022-02-20 19:37:46,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 94 transitions. [2022-02-20 19:37:46,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:46,119 INFO L225 Difference]: With dead ends: 81 [2022-02-20 19:37:46,119 INFO L226 Difference]: Without dead ends: 78 [2022-02-20 19:37:46,120 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 27 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=138, Invalid=618, Unknown=0, NotChecked=0, Total=756 [2022-02-20 19:37:46,120 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 45 mSDsluCounter, 349 mSDsCounter, 0 mSdLazyCounter, 246 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 388 SdHoareTripleChecker+Invalid, 289 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 246 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:46,120 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 388 Invalid, 289 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 246 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 19:37:46,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-02-20 19:37:46,154 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 70. [2022-02-20 19:37:46,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:46,155 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:46,155 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:46,156 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:46,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:46,158 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-02-20 19:37:46,158 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 97 transitions. [2022-02-20 19:37:46,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:46,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:46,159 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 78 states. [2022-02-20 19:37:46,171 INFO L87 Difference]: Start difference. First operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 78 states. [2022-02-20 19:37:46,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:46,173 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-02-20 19:37:46,173 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 97 transitions. [2022-02-20 19:37:46,174 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:46,174 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:46,174 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:46,174 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:46,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 states have internal predecessors, (64), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:46,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 86 transitions. [2022-02-20 19:37:46,176 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 86 transitions. Word has length 23 [2022-02-20 19:37:46,176 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:46,176 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 86 transitions. [2022-02-20 19:37:46,176 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 16 states have (on average 2.0625) internal successors, (33), 17 states have internal predecessors, (33), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 19:37:46,176 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 86 transitions. [2022-02-20 19:37:46,176 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 19:37:46,177 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:46,177 INFO L514 BasicCegarLoop]: trace histogram [6, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:46,196 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-20 19:37:46,387 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-20 19:37:46,387 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:46,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:46,388 INFO L85 PathProgramCache]: Analyzing trace with hash 469106930, now seen corresponding path program 4 times [2022-02-20 19:37:46,388 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:46,388 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [81401915] [2022-02-20 19:37:46,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:46,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:46,410 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:46,410 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1290938255] [2022-02-20 19:37:46,411 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 19:37:46,411 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:46,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:46,423 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-20 19:37:46,435 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-20 19:37:46,475 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 19:37:46,475 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 19:37:46,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 19:37:46,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:46,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 19:37:47,026 INFO L290 TraceCheckUtils]: 0: Hoare triple {2210#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {2210#true} is VALID [2022-02-20 19:37:47,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {2210#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {2210#true} is VALID [2022-02-20 19:37:47,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {2210#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,027 INFO L290 TraceCheckUtils]: 3: Hoare triple {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 < 0); {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,028 INFO L290 TraceCheckUtils]: 4: Hoare triple {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~b#1 < 0); {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(0 == gcd_test_~a#1); {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,028 INFO L290 TraceCheckUtils]: 6: Hoare triple {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,029 INFO L290 TraceCheckUtils]: 7: Hoare triple {2221#(and (<= 63 |ULTIMATE.start_gcd_test_~a#1|) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2237#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {2237#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {2237#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {2237#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2244#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,031 INFO L290 TraceCheckUtils]: 10: Hoare triple {2244#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {2244#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {2244#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 2))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2251#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {2251#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !!(0 != gcd_test_~b#1); {2251#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} is VALID [2022-02-20 19:37:47,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {2251#(and (<= 63 (+ |ULTIMATE.start_gcd_test_~a#1| (* |ULTIMATE.start_gcd_test_~b#1| 3))) (<= |ULTIMATE.start_gcd_test_~b#1| 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2258#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 18))} is VALID [2022-02-20 19:37:47,033 INFO L290 TraceCheckUtils]: 14: Hoare triple {2258#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 18))} assume !!(0 != gcd_test_~b#1); {2258#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 18))} is VALID [2022-02-20 19:37:47,034 INFO L290 TraceCheckUtils]: 15: Hoare triple {2258#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|) 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2265#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2)) 18))} is VALID [2022-02-20 19:37:47,034 INFO L290 TraceCheckUtils]: 16: Hoare triple {2265#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2)) 18))} assume !!(0 != gcd_test_~b#1); {2265#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2)) 18))} is VALID [2022-02-20 19:37:47,035 INFO L290 TraceCheckUtils]: 17: Hoare triple {2265#(and (<= (div (+ |ULTIMATE.start_gcd_test_~a#1| (- 63)) (- 3)) 18) (<= (+ |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2)) 18))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2272#(<= (div (div (+ (* |ULTIMATE.start_gcd_test_~b#1| (- 1)) (- 171)) 3) (- 3)) 18)} is VALID [2022-02-20 19:37:47,035 INFO L290 TraceCheckUtils]: 18: Hoare triple {2272#(<= (div (div (+ (* |ULTIMATE.start_gcd_test_~b#1| (- 1)) (- 171)) 3) (- 3)) 18)} assume !(0 != gcd_test_~b#1); {2211#false} is VALID [2022-02-20 19:37:47,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {2211#false} gcd_test_#res#1 := gcd_test_~a#1; {2211#false} is VALID [2022-02-20 19:37:47,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {2211#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {2211#false} is VALID [2022-02-20 19:37:47,036 INFO L272 TraceCheckUtils]: 21: Hoare triple {2211#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {2211#false} is VALID [2022-02-20 19:37:47,036 INFO L290 TraceCheckUtils]: 22: Hoare triple {2211#false} ~cond := #in~cond; {2211#false} is VALID [2022-02-20 19:37:47,036 INFO L290 TraceCheckUtils]: 23: Hoare triple {2211#false} assume 0 == ~cond; {2211#false} is VALID [2022-02-20 19:37:47,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {2211#false} assume !false; {2211#false} is VALID [2022-02-20 19:37:47,040 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 2 proven. 34 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:47,040 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 19:37:47,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {2211#false} assume !false; {2211#false} is VALID [2022-02-20 19:37:47,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {2211#false} assume 0 == ~cond; {2211#false} is VALID [2022-02-20 19:37:47,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {2211#false} ~cond := #in~cond; {2211#false} is VALID [2022-02-20 19:37:47,508 INFO L272 TraceCheckUtils]: 21: Hoare triple {2211#false} call __VERIFIER_assert((if 0 == (if main1_~x~0#1 < 0 && 0 != main1_~x~0#1 % main1_~g~0#1 then (if main1_~g~0#1 < 0 then main1_~x~0#1 % main1_~g~0#1 + main1_~g~0#1 else main1_~x~0#1 % main1_~g~0#1 - main1_~g~0#1) else main1_~x~0#1 % main1_~g~0#1) then 1 else 0)); {2211#false} is VALID [2022-02-20 19:37:47,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {2211#false} main1_#t~ret5#1 := gcd_test_#res#1;assume { :end_inline_gcd_test } true;assume -2147483648 <= main1_#t~ret5#1 && main1_#t~ret5#1 <= 2147483647;main1_~g~0#1 := main1_#t~ret5#1;havoc main1_#t~ret5#1; {2211#false} is VALID [2022-02-20 19:37:47,508 INFO L290 TraceCheckUtils]: 19: Hoare triple {2211#false} gcd_test_#res#1 := gcd_test_~a#1; {2211#false} is VALID [2022-02-20 19:37:47,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {2312#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} assume !(0 != gcd_test_~b#1); {2211#false} is VALID [2022-02-20 19:37:47,509 INFO L290 TraceCheckUtils]: 17: Hoare triple {2316#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2312#(not (<= 0 |ULTIMATE.start_gcd_test_~b#1|))} is VALID [2022-02-20 19:37:47,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {2316#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} assume !!(0 != gcd_test_~b#1); {2316#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:47,510 INFO L290 TraceCheckUtils]: 15: Hoare triple {2323#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2316#(< |ULTIMATE.start_gcd_test_~b#1| |ULTIMATE.start_gcd_test_~a#1|)} is VALID [2022-02-20 19:37:47,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {2323#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2))} assume !!(0 != gcd_test_~b#1); {2323#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2))} is VALID [2022-02-20 19:37:47,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {2330#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 3))} assume !(gcd_test_~a#1 > gcd_test_~b#1);gcd_test_~b#1 := gcd_test_~b#1 - gcd_test_~a#1; {2323#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 2))} is VALID [2022-02-20 19:37:47,512 INFO L290 TraceCheckUtils]: 12: Hoare triple {2330#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 3))} assume !!(0 != gcd_test_~b#1); {2330#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 3))} is VALID [2022-02-20 19:37:47,512 INFO L290 TraceCheckUtils]: 11: Hoare triple {2337#(< (+ |ULTIMATE.start_gcd_test_~b#1| (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3))) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2330#(< |ULTIMATE.start_gcd_test_~b#1| (* |ULTIMATE.start_gcd_test_~a#1| 3))} is VALID [2022-02-20 19:37:47,513 INFO L290 TraceCheckUtils]: 10: Hoare triple {2337#(< (+ |ULTIMATE.start_gcd_test_~b#1| (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3))) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !!(0 != gcd_test_~b#1); {2337#(< (+ |ULTIMATE.start_gcd_test_~b#1| (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3))) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,514 INFO L290 TraceCheckUtils]: 9: Hoare triple {2344#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 2)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2337#(< (+ |ULTIMATE.start_gcd_test_~b#1| (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3))) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,514 INFO L290 TraceCheckUtils]: 8: Hoare triple {2344#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 2)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !!(0 != gcd_test_~b#1); {2344#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 2)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,515 INFO L290 TraceCheckUtils]: 7: Hoare triple {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume gcd_test_~a#1 > gcd_test_~b#1;gcd_test_~a#1 := gcd_test_~a#1 - gcd_test_~b#1; {2344#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 2)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,515 INFO L290 TraceCheckUtils]: 6: Hoare triple {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !!(0 != gcd_test_~b#1); {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,516 INFO L290 TraceCheckUtils]: 5: Hoare triple {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !(0 == gcd_test_~a#1); {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,516 INFO L290 TraceCheckUtils]: 4: Hoare triple {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !(gcd_test_~b#1 < 0); {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,517 INFO L290 TraceCheckUtils]: 3: Hoare triple {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} assume !(gcd_test_~a#1 < 0); {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,517 INFO L290 TraceCheckUtils]: 2: Hoare triple {2210#true} assume 0 != main_#t~nondet13#1;havoc main_#t~nondet13#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_#t~ret5#1, main1_~x~0#1, main1_~y~0#1, main1_~g~0#1;havoc main1_~x~0#1;havoc main1_~y~0#1;havoc main1_~g~0#1;main1_~x~0#1 := 63;main1_~y~0#1 := 18;assume { :begin_inline_gcd_test } true;gcd_test_#in~a#1, gcd_test_#in~b#1 := main1_~x~0#1, main1_~y~0#1;havoc gcd_test_#res#1;havoc gcd_test_~a#1, gcd_test_~b#1;gcd_test_~a#1 := gcd_test_#in~a#1;gcd_test_~b#1 := gcd_test_#in~b#1; {2351#(< (+ (div (+ (- 1) (* |ULTIMATE.start_gcd_test_~b#1| (- 1))) (- 3)) (* |ULTIMATE.start_gcd_test_~b#1| 3)) (+ |ULTIMATE.start_gcd_test_~a#1| 1))} is VALID [2022-02-20 19:37:47,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {2210#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~ret14#1, main_#t~ret15#1;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647; {2210#true} is VALID [2022-02-20 19:37:47,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {2210#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(8, 2);call #Ultimate.allocInit(12, 3); {2210#true} is VALID [2022-02-20 19:37:47,518 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 19:37:47,518 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 19:37:47,518 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [81401915] [2022-02-20 19:37:47,518 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 19:37:47,518 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290938255] [2022-02-20 19:37:47,518 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290938255] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 19:37:47,518 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 19:37:47,518 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-02-20 19:37:47,519 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [541946664] [2022-02-20 19:37:47,519 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 19:37:47,519 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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 25 [2022-02-20 19:37:47,519 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 19:37:47,519 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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-20 19:37:47,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:47,555 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 19:37:47,555 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 19:37:47,555 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 19:37:47,556 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=185, Unknown=0, NotChecked=0, Total=240 [2022-02-20 19:37:47,556 INFO L87 Difference]: Start difference. First operand 70 states and 86 transitions. Second operand has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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-20 19:37:48,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:48,188 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2022-02-20 19:37:48,188 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 19:37:48,188 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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 25 [2022-02-20 19:37:48,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 19:37:48,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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-20 19:37:48,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-02-20 19:37:48,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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-20 19:37:48,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 86 transitions. [2022-02-20 19:37:48,191 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 86 transitions. [2022-02-20 19:37:48,269 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 19:37:48,271 INFO L225 Difference]: With dead ends: 94 [2022-02-20 19:37:48,271 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 19:37:48,271 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=109, Invalid=311, Unknown=0, NotChecked=0, Total=420 [2022-02-20 19:37:48,272 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 19 mSDsluCounter, 409 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 448 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 19:37:48,272 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 448 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 19:37:48,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 19:37:48,296 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 66. [2022-02-20 19:37:48,297 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 19:37:48,297 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:48,297 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:48,298 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:48,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:48,299 INFO L93 Difference]: Finished difference Result 66 states and 77 transitions. [2022-02-20 19:37:48,300 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 77 transitions. [2022-02-20 19:37:48,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:48,300 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:48,300 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 66 states. [2022-02-20 19:37:48,301 INFO L87 Difference]: Start difference. First operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 66 states. [2022-02-20 19:37:48,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 19:37:48,302 INFO L93 Difference]: Finished difference Result 66 states and 77 transitions. [2022-02-20 19:37:48,302 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 77 transitions. [2022-02-20 19:37:48,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 19:37:48,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 19:37:48,303 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 19:37:48,303 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 19:37:48,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 52 states have internal predecessors, (55), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 19:37:48,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 77 transitions. [2022-02-20 19:37:48,305 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 77 transitions. Word has length 25 [2022-02-20 19:37:48,305 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 19:37:48,305 INFO L470 AbstractCegarLoop]: Abstraction has 66 states and 77 transitions. [2022-02-20 19:37:48,305 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.5625) internal successors, (41), 16 states have internal predecessors, (41), 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-20 19:37:48,305 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 77 transitions. [2022-02-20 19:37:48,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 19:37:48,306 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 19:37:48,306 INFO L514 BasicCegarLoop]: trace histogram [7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 19:37:48,337 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-20 19:37:48,523 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-20 19:37:48,523 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 19:37:48,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 19:37:48,524 INFO L85 PathProgramCache]: Analyzing trace with hash -985782289, now seen corresponding path program 5 times [2022-02-20 19:37:48,524 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 19:37:48,524 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [145123948] [2022-02-20 19:37:48,524 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 19:37:48,524 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 19:37:48,543 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 19:37:48,543 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1994694213] [2022-02-20 19:37:48,543 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 19:37:48,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 19:37:48,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 19:37:48,548 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-20 19:37:48,549 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-20 19:37:48,601 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2022-02-20 19:37:48,601 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 19:37:48,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 19:37:48,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 19:37:48,613 INFO L286 TraceCheckSpWp]: Computing forward predicates...