./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/cohendiv-ll_valuebound100.c --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/nla-digbench-scaling/cohendiv-ll_valuebound100.c -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 4da533f9027cb26869f2cd2349cd7115ebf62144e1d11b018683e8601f934a1d --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:16:17,268 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:16:17,269 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:16:17,306 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:16:17,307 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:16:17,309 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:16:17,310 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:16:17,312 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:16:17,313 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:16:17,316 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:16:17,317 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:16:17,318 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:16:17,318 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:16:17,320 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:16:17,321 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:16:17,323 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:16:17,323 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:16:17,324 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:16:17,326 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:16:17,330 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:16:17,332 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:16:17,332 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:16:17,333 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:16:17,334 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:16:17,338 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:16:17,339 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:16:17,339 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:16:17,340 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:16:17,340 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:16:17,341 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:16:17,341 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:16:17,342 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:16:17,343 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:16:17,344 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:16:17,344 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:16:17,345 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:16:17,345 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:16:17,345 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:16:17,345 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:16:17,346 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:16:17,346 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:16:17,348 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 17:16:17,364 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:16:17,364 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:16:17,365 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:16:17,365 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:16:17,365 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:16:17,365 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:16:17,366 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:16:17,366 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:16:17,366 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:16:17,366 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:16:17,367 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:16:17,367 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:16:17,367 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:16:17,367 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:16:17,367 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:16:17,368 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:16:17,369 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:16:17,369 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:16:17,369 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:16:17,369 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:16:17,369 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:16:17,369 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:16:17,370 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:16:17,370 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:16:17,371 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:16:17,371 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:16:17,371 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:16:17,371 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:16:17,371 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 -> 4da533f9027cb26869f2cd2349cd7115ebf62144e1d11b018683e8601f934a1d [2022-02-20 17:16:17,546 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:16:17,565 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:16:17,567 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:16:17,568 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:16:17,568 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:16:17,569 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-02-20 17:16:17,626 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c72e87fd3/e2ebc0854a53414c80d49a4fa411be53/FLAG2f164b1ac [2022-02-20 17:16:17,950 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:16:17,950 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-02-20 17:16:17,955 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c72e87fd3/e2ebc0854a53414c80d49a4fa411be53/FLAG2f164b1ac [2022-02-20 17:16:18,379 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c72e87fd3/e2ebc0854a53414c80d49a4fa411be53 [2022-02-20 17:16:18,380 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:16:18,381 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:16:18,384 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:16:18,384 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:16:18,386 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:16:18,387 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,388 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c5274ae and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18, skipping insertion in model container [2022-02-20 17:16:18,388 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,393 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:16:18,404 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:16:18,510 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/nla-digbench-scaling/cohendiv-ll_valuebound100.c[576,589] [2022-02-20 17:16:18,539 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:16:18,547 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:16:18,559 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/nla-digbench-scaling/cohendiv-ll_valuebound100.c[576,589] [2022-02-20 17:16:18,564 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:16:18,573 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:16:18,574 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18 WrapperNode [2022-02-20 17:16:18,574 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:16:18,575 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:16:18,575 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:16:18,575 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:16:18,580 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,584 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,597 INFO L137 Inliner]: procedures = 14, calls = 17, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 56 [2022-02-20 17:16:18,597 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:16:18,598 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:16:18,598 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:16:18,598 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:16:18,603 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,603 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,604 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,604 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,608 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,611 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,611 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,612 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:16:18,613 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:16:18,613 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:16:18,613 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:16:18,614 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (1/1) ... [2022-02-20 17:16:18,618 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:16:18,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:18,641 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 17:16:18,650 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 17:16:18,671 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:16:18,671 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:16:18,671 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:16:18,672 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:16:18,672 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:16:18,672 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:16:18,672 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:16:18,674 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:16:18,715 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:16:18,716 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:16:18,869 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:16:18,878 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:16:18,879 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 17:16:18,880 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:16:18 BoogieIcfgContainer [2022-02-20 17:16:18,880 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:16:18,881 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:16:18,881 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:16:18,883 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:16:18,884 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:16:18" (1/3) ... [2022-02-20 17:16:18,884 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7265f483 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:16:18, skipping insertion in model container [2022-02-20 17:16:18,884 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:16:18" (2/3) ... [2022-02-20 17:16:18,884 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7265f483 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:16:18, skipping insertion in model container [2022-02-20 17:16:18,884 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:16:18" (3/3) ... [2022-02-20 17:16:18,885 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound100.c [2022-02-20 17:16:18,889 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:16:18,889 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:16:18,920 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:16:18,924 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 17:16:18,925 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:16:18,938 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:16:18,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 17:16:18,942 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:18,942 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:18,943 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:18,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:18,946 INFO L85 PathProgramCache]: Analyzing trace with hash 1418986431, now seen corresponding path program 1 times [2022-02-20 17:16:18,952 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:18,953 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [416472801] [2022-02-20 17:16:18,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:18,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:19,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,103 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:16:19,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,121 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,123 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,123 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,123 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {37#true} #75#return; {38#false} is VALID [2022-02-20 17:16:19,124 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-02-20 17:16:19,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,141 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,142 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,142 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #77#return; {38#false} is VALID [2022-02-20 17:16:19,142 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2022-02-20 17:16:19,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,153 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #79#return; {38#false} is VALID [2022-02-20 17:16:19,155 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#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(14, 2);call #Ultimate.allocInit(12, 3); {37#true} is VALID [2022-02-20 17:16:19,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {37#true} is VALID [2022-02-20 17:16:19,155 INFO L272 TraceCheckUtils]: 2: Hoare triple {37#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {37#true} is VALID [2022-02-20 17:16:19,156 INFO L290 TraceCheckUtils]: 3: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,156 INFO L290 TraceCheckUtils]: 4: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,156 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,156 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {38#false} {37#true} #75#return; {38#false} is VALID [2022-02-20 17:16:19,157 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#false} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {38#false} is VALID [2022-02-20 17:16:19,157 INFO L272 TraceCheckUtils]: 8: Hoare triple {38#false} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {37#true} is VALID [2022-02-20 17:16:19,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,157 INFO L290 TraceCheckUtils]: 10: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,158 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {38#false} {38#false} #77#return; {38#false} is VALID [2022-02-20 17:16:19,159 INFO L272 TraceCheckUtils]: 13: Hoare triple {38#false} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {37#true} is VALID [2022-02-20 17:16:19,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-02-20 17:16:19,159 INFO L290 TraceCheckUtils]: 15: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-02-20 17:16:19,160 INFO L290 TraceCheckUtils]: 16: Hoare triple {38#false} assume true; {38#false} is VALID [2022-02-20 17:16:19,160 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {38#false} {38#false} #79#return; {38#false} is VALID [2022-02-20 17:16:19,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {38#false} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {38#false} is VALID [2022-02-20 17:16:19,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {38#false} assume !true; {38#false} is VALID [2022-02-20 17:16:19,160 INFO L272 TraceCheckUtils]: 20: Hoare triple {38#false} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {38#false} is VALID [2022-02-20 17:16:19,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {38#false} ~cond := #in~cond; {38#false} is VALID [2022-02-20 17:16:19,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {38#false} assume 0 == ~cond; {38#false} is VALID [2022-02-20 17:16:19,161 INFO L290 TraceCheckUtils]: 23: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-02-20 17:16:19,162 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-02-20 17:16:19,162 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:19,163 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [416472801] [2022-02-20 17:16:19,163 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [416472801] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:16:19,164 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:16:19,164 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:16:19,166 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [113050517] [2022-02-20 17:16:19,168 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:19,173 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-02-20 17:16:19,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:19,177 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:16:19,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:19,204 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:16:19,204 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:19,223 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:16:19,224 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:16:19,226 INFO L87 Difference]: Start difference. First operand has 34 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:16:19,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,306 INFO L93 Difference]: Finished difference Result 65 states and 104 transitions. [2022-02-20 17:16:19,307 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:16:19,307 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-02-20 17:16:19,307 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:19,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:16:19,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 17:16:19,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:16:19,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 17:16:19,334 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 17:16:19,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:19,471 INFO L225 Difference]: With dead ends: 65 [2022-02-20 17:16:19,471 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 17:16:19,473 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:16:19,477 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:19,478 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:16:19,490 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 17:16:19,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-02-20 17:16:19,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:19,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:16:19,505 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:16:19,506 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:16:19,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,511 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:16:19,512 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:16:19,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:19,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:19,518 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 30 states. [2022-02-20 17:16:19,518 INFO L87 Difference]: Start difference. First operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 30 states. [2022-02-20 17:16:19,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,521 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:16:19,521 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:16:19,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:19,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:19,522 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:19,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:19,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:16:19,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-02-20 17:16:19,528 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 24 [2022-02-20 17:16:19,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:19,528 INFO L470 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-02-20 17:16:19,528 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:16:19,529 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:16:19,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 17:16:19,529 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:19,529 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:19,530 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:16:19,530 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:19,530 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:19,530 INFO L85 PathProgramCache]: Analyzing trace with hash 240368937, now seen corresponding path program 1 times [2022-02-20 17:16:19,531 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:19,531 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1977486656] [2022-02-20 17:16:19,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:19,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:19,547 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:19,547 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1095027224] [2022-02-20 17:16:19,547 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:19,547 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:19,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:19,549 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 17:16:19,550 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 17:16:19,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,584 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 17:16:19,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:19,593 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:19,705 INFO L290 TraceCheckUtils]: 0: Hoare triple {251#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(14, 2);call #Ultimate.allocInit(12, 3); {251#true} is VALID [2022-02-20 17:16:19,706 INFO L290 TraceCheckUtils]: 1: Hoare triple {251#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {251#true} is VALID [2022-02-20 17:16:19,706 INFO L272 TraceCheckUtils]: 2: Hoare triple {251#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {251#true} is VALID [2022-02-20 17:16:19,706 INFO L290 TraceCheckUtils]: 3: Hoare triple {251#true} ~cond := #in~cond; {251#true} is VALID [2022-02-20 17:16:19,706 INFO L290 TraceCheckUtils]: 4: Hoare triple {251#true} assume !(0 == ~cond); {251#true} is VALID [2022-02-20 17:16:19,706 INFO L290 TraceCheckUtils]: 5: Hoare triple {251#true} assume true; {251#true} is VALID [2022-02-20 17:16:19,707 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {251#true} {251#true} #75#return; {251#true} is VALID [2022-02-20 17:16:19,707 INFO L290 TraceCheckUtils]: 7: Hoare triple {251#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {251#true} is VALID [2022-02-20 17:16:19,707 INFO L272 TraceCheckUtils]: 8: Hoare triple {251#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {251#true} is VALID [2022-02-20 17:16:19,707 INFO L290 TraceCheckUtils]: 9: Hoare triple {251#true} ~cond := #in~cond; {251#true} is VALID [2022-02-20 17:16:19,707 INFO L290 TraceCheckUtils]: 10: Hoare triple {251#true} assume !(0 == ~cond); {251#true} is VALID [2022-02-20 17:16:19,707 INFO L290 TraceCheckUtils]: 11: Hoare triple {251#true} assume true; {251#true} is VALID [2022-02-20 17:16:19,708 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {251#true} {251#true} #77#return; {251#true} is VALID [2022-02-20 17:16:19,708 INFO L272 TraceCheckUtils]: 13: Hoare triple {251#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {251#true} is VALID [2022-02-20 17:16:19,708 INFO L290 TraceCheckUtils]: 14: Hoare triple {251#true} ~cond := #in~cond; {251#true} is VALID [2022-02-20 17:16:19,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {251#true} assume !(0 == ~cond); {251#true} is VALID [2022-02-20 17:16:19,708 INFO L290 TraceCheckUtils]: 16: Hoare triple {251#true} assume true; {251#true} is VALID [2022-02-20 17:16:19,708 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {251#true} {251#true} #79#return; {251#true} is VALID [2022-02-20 17:16:19,709 INFO L290 TraceCheckUtils]: 18: Hoare triple {251#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {310#(and (= |ULTIMATE.start_main_~b~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| 0))} is VALID [2022-02-20 17:16:19,709 INFO L290 TraceCheckUtils]: 19: Hoare triple {310#(and (= |ULTIMATE.start_main_~b~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| 0))} assume !false; {310#(and (= |ULTIMATE.start_main_~b~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| 0))} is VALID [2022-02-20 17:16:19,710 INFO L272 TraceCheckUtils]: 20: Hoare triple {310#(and (= |ULTIMATE.start_main_~b~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| 0))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {317#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:19,711 INFO L290 TraceCheckUtils]: 21: Hoare triple {317#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {321#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:19,711 INFO L290 TraceCheckUtils]: 22: Hoare triple {321#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {252#false} is VALID [2022-02-20 17:16:19,711 INFO L290 TraceCheckUtils]: 23: Hoare triple {252#false} assume !false; {252#false} is VALID [2022-02-20 17:16:19,711 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-02-20 17:16:19,712 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:16:19,712 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:19,712 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1977486656] [2022-02-20 17:16:19,712 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:19,712 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1095027224] [2022-02-20 17:16:19,713 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1095027224] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:16:19,713 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:16:19,713 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:16:19,713 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1995831897] [2022-02-20 17:16:19,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:19,714 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-02-20 17:16:19,714 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:19,715 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 17:16:19,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:19,728 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:16:19,728 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:19,728 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:16:19,728 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:16:19,729 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 17:16:19,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,843 INFO L93 Difference]: Finished difference Result 41 states and 52 transitions. [2022-02-20 17:16:19,843 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:16:19,844 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-02-20 17:16:19,844 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:19,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 17:16:19,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-02-20 17:16:19,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 17:16:19,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-02-20 17:16:19,847 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 52 transitions. [2022-02-20 17:16:19,884 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:19,885 INFO L225 Difference]: With dead ends: 41 [2022-02-20 17:16:19,885 INFO L226 Difference]: Without dead ends: 39 [2022-02-20 17:16:19,886 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:16:19,887 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 6 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:19,887 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 137 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:16:19,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-02-20 17:16:19,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 36. [2022-02-20 17:16:19,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:19,892 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:16:19,892 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:16:19,892 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:16:19,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,894 INFO L93 Difference]: Finished difference Result 39 states and 50 transitions. [2022-02-20 17:16:19,895 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 50 transitions. [2022-02-20 17:16:19,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:19,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:19,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 39 states. [2022-02-20 17:16:19,896 INFO L87 Difference]: Start difference. First operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 39 states. [2022-02-20 17:16:19,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:19,898 INFO L93 Difference]: Finished difference Result 39 states and 50 transitions. [2022-02-20 17:16:19,898 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 50 transitions. [2022-02-20 17:16:19,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:19,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:19,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:19,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:19,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 23 states have internal predecessors, (24), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:16:19,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 45 transitions. [2022-02-20 17:16:19,901 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 45 transitions. Word has length 24 [2022-02-20 17:16:19,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:19,901 INFO L470 AbstractCegarLoop]: Abstraction has 36 states and 45 transitions. [2022-02-20 17:16:19,901 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-20 17:16:19,902 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 45 transitions. [2022-02-20 17:16:19,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:16:19,902 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:19,902 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:19,925 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 17:16:20,116 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:20,116 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:20,117 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:20,117 INFO L85 PathProgramCache]: Analyzing trace with hash -854318377, now seen corresponding path program 1 times [2022-02-20 17:16:20,117 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:20,117 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1896573414] [2022-02-20 17:16:20,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:20,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:20,139 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:20,139 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1588123954] [2022-02-20 17:16:20,139 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:20,139 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:20,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:20,141 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 17:16:20,142 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 17:16:20,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:20,172 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 17:16:20,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:20,181 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:20,438 INFO L290 TraceCheckUtils]: 0: Hoare triple {520#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(14, 2);call #Ultimate.allocInit(12, 3); {520#true} is VALID [2022-02-20 17:16:20,438 INFO L290 TraceCheckUtils]: 1: Hoare triple {520#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {520#true} is VALID [2022-02-20 17:16:20,438 INFO L272 TraceCheckUtils]: 2: Hoare triple {520#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {520#true} is VALID [2022-02-20 17:16:20,438 INFO L290 TraceCheckUtils]: 3: Hoare triple {520#true} ~cond := #in~cond; {520#true} is VALID [2022-02-20 17:16:20,439 INFO L290 TraceCheckUtils]: 4: Hoare triple {520#true} assume !(0 == ~cond); {520#true} is VALID [2022-02-20 17:16:20,439 INFO L290 TraceCheckUtils]: 5: Hoare triple {520#true} assume true; {520#true} is VALID [2022-02-20 17:16:20,439 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {520#true} {520#true} #75#return; {520#true} is VALID [2022-02-20 17:16:20,439 INFO L290 TraceCheckUtils]: 7: Hoare triple {520#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {520#true} is VALID [2022-02-20 17:16:20,439 INFO L272 TraceCheckUtils]: 8: Hoare triple {520#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {520#true} is VALID [2022-02-20 17:16:20,440 INFO L290 TraceCheckUtils]: 9: Hoare triple {520#true} ~cond := #in~cond; {552#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:16:20,440 INFO L290 TraceCheckUtils]: 10: Hoare triple {552#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {556#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:20,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {556#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {556#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:20,441 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {556#(not (= |assume_abort_if_not_#in~cond| 0))} {520#true} #77#return; {563#(and (<= 0 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100))} is VALID [2022-02-20 17:16:20,441 INFO L272 TraceCheckUtils]: 13: Hoare triple {563#(and (<= 0 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100))} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {520#true} is VALID [2022-02-20 17:16:20,442 INFO L290 TraceCheckUtils]: 14: Hoare triple {520#true} ~cond := #in~cond; {552#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:16:20,442 INFO L290 TraceCheckUtils]: 15: Hoare triple {552#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {556#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:20,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {556#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {556#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:20,443 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {556#(not (= |assume_abort_if_not_#in~cond| 0))} {563#(and (<= 0 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100))} #79#return; {579#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100))} is VALID [2022-02-20 17:16:20,444 INFO L290 TraceCheckUtils]: 18: Hoare triple {579#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100))} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} is VALID [2022-02-20 17:16:20,444 INFO L290 TraceCheckUtils]: 19: Hoare triple {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} assume !false; {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} is VALID [2022-02-20 17:16:20,444 INFO L272 TraceCheckUtils]: 20: Hoare triple {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {520#true} is VALID [2022-02-20 17:16:20,445 INFO L290 TraceCheckUtils]: 21: Hoare triple {520#true} ~cond := #in~cond; {520#true} is VALID [2022-02-20 17:16:20,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {520#true} assume !(0 == ~cond); {520#true} is VALID [2022-02-20 17:16:20,445 INFO L290 TraceCheckUtils]: 23: Hoare triple {520#true} assume true; {520#true} is VALID [2022-02-20 17:16:20,446 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {520#true} {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} #81#return; {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} is VALID [2022-02-20 17:16:20,447 INFO L272 TraceCheckUtils]: 25: Hoare triple {583#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= |ULTIMATE.start_main_~y~0#1| 100))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {605#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:20,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {605#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {609#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:20,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {609#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {521#false} is VALID [2022-02-20 17:16:20,448 INFO L290 TraceCheckUtils]: 28: Hoare triple {521#false} assume !false; {521#false} is VALID [2022-02-20 17:16:20,448 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 17:16:20,448 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:16:20,448 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:20,448 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1896573414] [2022-02-20 17:16:20,449 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:20,449 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1588123954] [2022-02-20 17:16:20,449 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1588123954] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:16:20,449 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:16:20,449 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 17:16:20,449 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [282937116] [2022-02-20 17:16:20,449 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:20,450 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 17:16:20,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:20,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:16:20,467 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:20,468 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:16:20,468 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:20,468 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:16:20,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:16:20,469 INFO L87 Difference]: Start difference. First operand 36 states and 45 transitions. Second operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:16:20,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:20,852 INFO L93 Difference]: Finished difference Result 53 states and 68 transitions. [2022-02-20 17:16:20,852 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:16:20,853 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 17:16:20,853 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:20,853 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:16:20,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-02-20 17:16:20,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:16:20,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-02-20 17:16:20,857 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-02-20 17:16:20,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:20,916 INFO L225 Difference]: With dead ends: 53 [2022-02-20 17:16:20,916 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 17:16:20,916 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:16:20,917 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 29 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 102 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 193 SdHoareTripleChecker+Invalid, 111 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 102 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:20,917 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 193 Invalid, 111 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 102 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:16:20,918 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 17:16:20,937 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 49. [2022-02-20 17:16:20,937 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:20,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:16:20,938 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:16:20,938 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:16:20,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:20,941 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-02-20 17:16:20,941 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-02-20 17:16:20,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:20,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:20,942 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 50 states. [2022-02-20 17:16:20,942 INFO L87 Difference]: Start difference. First operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 50 states. [2022-02-20 17:16:20,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:20,945 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-02-20 17:16:20,945 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-02-20 17:16:20,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:20,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:20,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:20,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:20,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 29 states have internal predecessors, (32), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:16:20,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 63 transitions. [2022-02-20 17:16:20,948 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 63 transitions. Word has length 29 [2022-02-20 17:16:20,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:20,948 INFO L470 AbstractCegarLoop]: Abstraction has 49 states and 63 transitions. [2022-02-20 17:16:20,949 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:16:20,949 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 63 transitions. [2022-02-20 17:16:20,949 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 17:16:20,949 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:20,950 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:20,970 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-02-20 17:16:21,166 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,SelfDestructingSolverStorable2 [2022-02-20 17:16:21,169 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:21,169 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:21,169 INFO L85 PathProgramCache]: Analyzing trace with hash 1997084946, now seen corresponding path program 1 times [2022-02-20 17:16:21,169 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:21,169 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [240453934] [2022-02-20 17:16:21,170 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:21,170 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:21,181 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:21,181 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1458034501] [2022-02-20 17:16:21,181 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:21,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:21,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:21,183 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 17:16:21,184 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 17:16:21,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:21,214 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 17:16:21,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:21,220 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:21,310 INFO L290 TraceCheckUtils]: 0: Hoare triple {870#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(14, 2);call #Ultimate.allocInit(12, 3); {870#true} is VALID [2022-02-20 17:16:21,310 INFO L290 TraceCheckUtils]: 1: Hoare triple {870#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {870#true} is VALID [2022-02-20 17:16:21,310 INFO L272 TraceCheckUtils]: 2: Hoare triple {870#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {870#true} is VALID [2022-02-20 17:16:21,310 INFO L290 TraceCheckUtils]: 3: Hoare triple {870#true} ~cond := #in~cond; {870#true} is VALID [2022-02-20 17:16:21,311 INFO L290 TraceCheckUtils]: 4: Hoare triple {870#true} assume !(0 == ~cond); {870#true} is VALID [2022-02-20 17:16:21,311 INFO L290 TraceCheckUtils]: 5: Hoare triple {870#true} assume true; {870#true} is VALID [2022-02-20 17:16:21,311 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {870#true} {870#true} #75#return; {870#true} is VALID [2022-02-20 17:16:21,311 INFO L290 TraceCheckUtils]: 7: Hoare triple {870#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {870#true} is VALID [2022-02-20 17:16:21,311 INFO L272 TraceCheckUtils]: 8: Hoare triple {870#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {870#true} is VALID [2022-02-20 17:16:21,311 INFO L290 TraceCheckUtils]: 9: Hoare triple {870#true} ~cond := #in~cond; {870#true} is VALID [2022-02-20 17:16:21,311 INFO L290 TraceCheckUtils]: 10: Hoare triple {870#true} assume !(0 == ~cond); {870#true} is VALID [2022-02-20 17:16:21,312 INFO L290 TraceCheckUtils]: 11: Hoare triple {870#true} assume true; {870#true} is VALID [2022-02-20 17:16:21,314 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {870#true} {870#true} #77#return; {870#true} is VALID [2022-02-20 17:16:21,314 INFO L272 TraceCheckUtils]: 13: Hoare triple {870#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {870#true} is VALID [2022-02-20 17:16:21,314 INFO L290 TraceCheckUtils]: 14: Hoare triple {870#true} ~cond := #in~cond; {870#true} is VALID [2022-02-20 17:16:21,314 INFO L290 TraceCheckUtils]: 15: Hoare triple {870#true} assume !(0 == ~cond); {870#true} is VALID [2022-02-20 17:16:21,315 INFO L290 TraceCheckUtils]: 16: Hoare triple {870#true} assume true; {870#true} is VALID [2022-02-20 17:16:21,315 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {870#true} {870#true} #79#return; {870#true} is VALID [2022-02-20 17:16:21,315 INFO L290 TraceCheckUtils]: 18: Hoare triple {870#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {870#true} is VALID [2022-02-20 17:16:21,315 INFO L290 TraceCheckUtils]: 19: Hoare triple {870#true} assume !false; {870#true} is VALID [2022-02-20 17:16:21,315 INFO L272 TraceCheckUtils]: 20: Hoare triple {870#true} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {870#true} is VALID [2022-02-20 17:16:21,315 INFO L290 TraceCheckUtils]: 21: Hoare triple {870#true} ~cond := #in~cond; {870#true} is VALID [2022-02-20 17:16:21,316 INFO L290 TraceCheckUtils]: 22: Hoare triple {870#true} assume !(0 == ~cond); {870#true} is VALID [2022-02-20 17:16:21,316 INFO L290 TraceCheckUtils]: 23: Hoare triple {870#true} assume true; {870#true} is VALID [2022-02-20 17:16:21,316 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {870#true} {870#true} #81#return; {870#true} is VALID [2022-02-20 17:16:21,317 INFO L272 TraceCheckUtils]: 25: Hoare triple {870#true} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {870#true} is VALID [2022-02-20 17:16:21,317 INFO L290 TraceCheckUtils]: 26: Hoare triple {870#true} ~cond := #in~cond; {870#true} is VALID [2022-02-20 17:16:21,317 INFO L290 TraceCheckUtils]: 27: Hoare triple {870#true} assume !(0 == ~cond); {870#true} is VALID [2022-02-20 17:16:21,317 INFO L290 TraceCheckUtils]: 28: Hoare triple {870#true} assume true; {870#true} is VALID [2022-02-20 17:16:21,318 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {870#true} {870#true} #83#return; {870#true} is VALID [2022-02-20 17:16:21,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#true} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {965#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1))} is VALID [2022-02-20 17:16:21,336 INFO L290 TraceCheckUtils]: 31: Hoare triple {965#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1))} assume !false; {965#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1))} is VALID [2022-02-20 17:16:21,337 INFO L272 TraceCheckUtils]: 32: Hoare triple {965#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {972#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:21,338 INFO L290 TraceCheckUtils]: 33: Hoare triple {972#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {976#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:21,338 INFO L290 TraceCheckUtils]: 34: Hoare triple {976#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {871#false} is VALID [2022-02-20 17:16:21,338 INFO L290 TraceCheckUtils]: 35: Hoare triple {871#false} assume !false; {871#false} is VALID [2022-02-20 17:16:21,338 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:16:21,338 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:16:21,339 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:21,339 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [240453934] [2022-02-20 17:16:21,339 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:21,339 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1458034501] [2022-02-20 17:16:21,339 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1458034501] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:16:21,339 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:16:21,339 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:16:21,340 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1772624575] [2022-02-20 17:16:21,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:21,340 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-02-20 17:16:21,340 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:21,341 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 17:16:21,365 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:21,366 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:16:21,366 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:21,367 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:16:21,367 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:16:21,367 INFO L87 Difference]: Start difference. First operand 49 states and 63 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 17:16:21,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:21,536 INFO L93 Difference]: Finished difference Result 75 states and 101 transitions. [2022-02-20 17:16:21,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:16:21,537 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-02-20 17:16:21,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:21,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 17:16:21,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-02-20 17:16:21,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 17:16:21,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-02-20 17:16:21,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-02-20 17:16:21,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:21,598 INFO L225 Difference]: With dead ends: 75 [2022-02-20 17:16:21,598 INFO L226 Difference]: Without dead ends: 73 [2022-02-20 17:16:21,598 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:16:21,601 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 10 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:21,602 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 144 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:16:21,603 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2022-02-20 17:16:21,650 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 66. [2022-02-20 17:16:21,651 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:21,651 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:21,652 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:21,654 INFO L87 Difference]: Start difference. First operand 73 states. Second operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:21,660 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:21,660 INFO L93 Difference]: Finished difference Result 73 states and 99 transitions. [2022-02-20 17:16:21,661 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 99 transitions. [2022-02-20 17:16:21,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:21,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:21,664 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 73 states. [2022-02-20 17:16:21,664 INFO L87 Difference]: Start difference. First operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 73 states. [2022-02-20 17:16:21,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:21,669 INFO L93 Difference]: Finished difference Result 73 states and 99 transitions. [2022-02-20 17:16:21,669 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 99 transitions. [2022-02-20 17:16:21,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:21,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:21,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:21,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:21,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 37 states have (on average 1.162162162162162) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 5 states have call predecessors, (23), 5 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:21,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 88 transitions. [2022-02-20 17:16:21,673 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 88 transitions. Word has length 36 [2022-02-20 17:16:21,673 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:21,673 INFO L470 AbstractCegarLoop]: Abstraction has 66 states and 88 transitions. [2022-02-20 17:16:21,673 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 17:16:21,673 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 88 transitions. [2022-02-20 17:16:21,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 17:16:21,674 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:21,674 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:21,690 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 17:16:21,879 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:21,880 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:21,880 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:21,880 INFO L85 PathProgramCache]: Analyzing trace with hash -2056573358, now seen corresponding path program 1 times [2022-02-20 17:16:21,881 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:21,881 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1151308322] [2022-02-20 17:16:21,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:21,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:21,901 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:21,904 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [121187055] [2022-02-20 17:16:21,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:21,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:21,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:21,906 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 17:16:21,907 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 17:16:21,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:21,940 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:16:21,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:21,956 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:22,109 INFO L290 TraceCheckUtils]: 0: Hoare triple {1345#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(14, 2);call #Ultimate.allocInit(12, 3); {1345#true} is VALID [2022-02-20 17:16:22,109 INFO L290 TraceCheckUtils]: 1: Hoare triple {1345#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1345#true} is VALID [2022-02-20 17:16:22,109 INFO L272 TraceCheckUtils]: 2: Hoare triple {1345#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,109 INFO L290 TraceCheckUtils]: 3: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 4: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1345#true} {1345#true} #75#return; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 7: Hoare triple {1345#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L272 TraceCheckUtils]: 8: Hoare triple {1345#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 9: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 10: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L290 TraceCheckUtils]: 11: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1345#true} {1345#true} #77#return; {1345#true} is VALID [2022-02-20 17:16:22,110 INFO L272 TraceCheckUtils]: 13: Hoare triple {1345#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,111 INFO L290 TraceCheckUtils]: 14: Hoare triple {1345#true} ~cond := #in~cond; {1392#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:16:22,111 INFO L290 TraceCheckUtils]: 15: Hoare triple {1392#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1396#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:22,112 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1396#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:16:22,112 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1396#(not (= |assume_abort_if_not_#in~cond| 0))} {1345#true} #79#return; {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:16:22,112 INFO L290 TraceCheckUtils]: 18: Hoare triple {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:16:22,113 INFO L290 TraceCheckUtils]: 19: Hoare triple {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} assume !false; {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:16:22,113 INFO L272 TraceCheckUtils]: 20: Hoare triple {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,113 INFO L290 TraceCheckUtils]: 21: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,113 INFO L290 TraceCheckUtils]: 22: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,113 INFO L290 TraceCheckUtils]: 23: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,114 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1345#true} {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} #81#return; {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:16:22,114 INFO L272 TraceCheckUtils]: 25: Hoare triple {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,114 INFO L290 TraceCheckUtils]: 26: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,114 INFO L290 TraceCheckUtils]: 27: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,114 INFO L290 TraceCheckUtils]: 28: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,114 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1345#true} {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} #83#return; {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:16:22,115 INFO L290 TraceCheckUtils]: 30: Hoare triple {1403#(<= 1 |ULTIMATE.start_main_~y~0#1|)} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:22,115 INFO L290 TraceCheckUtils]: 31: Hoare triple {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} assume !false; {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:22,115 INFO L272 TraceCheckUtils]: 32: Hoare triple {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,115 INFO L290 TraceCheckUtils]: 33: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,115 INFO L290 TraceCheckUtils]: 34: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,115 INFO L290 TraceCheckUtils]: 35: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,116 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1345#true} {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} #85#return; {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:22,116 INFO L272 TraceCheckUtils]: 37: Hoare triple {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1345#true} is VALID [2022-02-20 17:16:22,116 INFO L290 TraceCheckUtils]: 38: Hoare triple {1345#true} ~cond := #in~cond; {1345#true} is VALID [2022-02-20 17:16:22,116 INFO L290 TraceCheckUtils]: 39: Hoare triple {1345#true} assume !(0 == ~cond); {1345#true} is VALID [2022-02-20 17:16:22,117 INFO L290 TraceCheckUtils]: 40: Hoare triple {1345#true} assume true; {1345#true} is VALID [2022-02-20 17:16:22,117 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1345#true} {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} #87#return; {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:22,118 INFO L272 TraceCheckUtils]: 42: Hoare triple {1443#(<= 1 |ULTIMATE.start_main_~r~0#1|)} call __VERIFIER_assert((if main_~r~0#1 >= 0 then 1 else 0)); {1480#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:22,118 INFO L290 TraceCheckUtils]: 43: Hoare triple {1480#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1484#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:22,118 INFO L290 TraceCheckUtils]: 44: Hoare triple {1484#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1346#false} is VALID [2022-02-20 17:16:22,118 INFO L290 TraceCheckUtils]: 45: Hoare triple {1346#false} assume !false; {1346#false} is VALID [2022-02-20 17:16:22,119 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-02-20 17:16:22,119 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:16:22,119 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:22,119 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1151308322] [2022-02-20 17:16:22,119 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:22,119 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [121187055] [2022-02-20 17:16:22,119 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [121187055] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:16:22,119 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:16:22,120 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 17:16:22,120 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1321814825] [2022-02-20 17:16:22,120 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:22,120 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 46 [2022-02-20 17:16:22,121 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:22,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-02-20 17:16:22,141 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 17:16:22,141 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 17:16:22,141 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:22,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 17:16:22,142 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 17:16:22,142 INFO L87 Difference]: Start difference. First operand 66 states and 88 transitions. Second operand has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-02-20 17:16:22,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:22,423 INFO L93 Difference]: Finished difference Result 72 states and 93 transitions. [2022-02-20 17:16:22,423 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 17:16:22,423 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 46 [2022-02-20 17:16:22,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:22,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-02-20 17:16:22,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 17:16:22,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-02-20 17:16:22,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 17:16:22,425 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 44 transitions. [2022-02-20 17:16:22,455 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:22,456 INFO L225 Difference]: With dead ends: 72 [2022-02-20 17:16:22,457 INFO L226 Difference]: Without dead ends: 70 [2022-02-20 17:16:22,457 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:16:22,457 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 16 mSDsluCounter, 139 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:22,458 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 169 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:16:22,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-02-20 17:16:22,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-02-20 17:16:22,499 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:22,499 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:22,499 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:22,500 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:22,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:22,502 INFO L93 Difference]: Finished difference Result 70 states and 91 transitions. [2022-02-20 17:16:22,502 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 91 transitions. [2022-02-20 17:16:22,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:22,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:22,503 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 70 states. [2022-02-20 17:16:22,503 INFO L87 Difference]: Start difference. First operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 70 states. [2022-02-20 17:16:22,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:22,506 INFO L93 Difference]: Finished difference Result 70 states and 91 transitions. [2022-02-20 17:16:22,506 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 91 transitions. [2022-02-20 17:16:22,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:22,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:22,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:22,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:22,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 40 states have (on average 1.15) internal successors, (46), 42 states have internal predecessors, (46), 23 states have call successors, (23), 6 states have call predecessors, (23), 6 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:22,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 91 transitions. [2022-02-20 17:16:22,509 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 91 transitions. Word has length 46 [2022-02-20 17:16:22,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:22,509 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 91 transitions. [2022-02-20 17:16:22,510 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.375) internal successors, (19), 7 states have internal predecessors, (19), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-02-20 17:16:22,510 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 91 transitions. [2022-02-20 17:16:22,510 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-02-20 17:16:22,510 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:22,511 INFO L514 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:22,527 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 17:16:22,727 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:22,727 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:22,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:22,728 INFO L85 PathProgramCache]: Analyzing trace with hash -2085516536, now seen corresponding path program 1 times [2022-02-20 17:16:22,728 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:22,728 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [905825226] [2022-02-20 17:16:22,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:22,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:22,740 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:22,740 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [900160851] [2022-02-20 17:16:22,740 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:22,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:22,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:22,742 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 17:16:22,743 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 17:16:22,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:22,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:16:22,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:22,785 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:23,061 INFO L290 TraceCheckUtils]: 0: Hoare triple {1850#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(14, 2);call #Ultimate.allocInit(12, 3); {1850#true} is VALID [2022-02-20 17:16:23,061 INFO L290 TraceCheckUtils]: 1: Hoare triple {1850#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1850#true} is VALID [2022-02-20 17:16:23,061 INFO L272 TraceCheckUtils]: 2: Hoare triple {1850#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 3: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 4: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 5: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1850#true} {1850#true} #75#return; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {1850#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L272 TraceCheckUtils]: 8: Hoare triple {1850#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 10: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 11: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1850#true} {1850#true} #77#return; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L272 TraceCheckUtils]: 13: Hoare triple {1850#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,062 INFO L290 TraceCheckUtils]: 15: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1850#true} {1850#true} #79#return; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {1850#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {1850#true} assume !false; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L272 TraceCheckUtils]: 20: Hoare triple {1850#true} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 21: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 22: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 23: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1850#true} {1850#true} #81#return; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L272 TraceCheckUtils]: 25: Hoare triple {1850#true} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 26: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,063 INFO L290 TraceCheckUtils]: 27: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,064 INFO L290 TraceCheckUtils]: 28: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,064 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1850#true} {1850#true} #83#return; {1850#true} is VALID [2022-02-20 17:16:23,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {1850#true} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {1850#true} is VALID [2022-02-20 17:16:23,064 INFO L290 TraceCheckUtils]: 31: Hoare triple {1850#true} assume !false; {1850#true} is VALID [2022-02-20 17:16:23,064 INFO L272 TraceCheckUtils]: 32: Hoare triple {1850#true} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,067 INFO L290 TraceCheckUtils]: 33: Hoare triple {1850#true} ~cond := #in~cond; {1954#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:23,067 INFO L290 TraceCheckUtils]: 34: Hoare triple {1954#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:16:23,067 INFO L290 TraceCheckUtils]: 35: Hoare triple {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:16:23,068 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} {1850#true} #85#return; {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:16:23,068 INFO L272 TraceCheckUtils]: 37: Hoare triple {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,068 INFO L290 TraceCheckUtils]: 38: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,068 INFO L290 TraceCheckUtils]: 39: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,068 INFO L290 TraceCheckUtils]: 40: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,069 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1850#true} {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} #87#return; {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:16:23,069 INFO L272 TraceCheckUtils]: 42: Hoare triple {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if main_~r~0#1 >= 0 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:23,069 INFO L290 TraceCheckUtils]: 43: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:23,069 INFO L290 TraceCheckUtils]: 44: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:23,069 INFO L290 TraceCheckUtils]: 45: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:23,070 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1850#true} {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} #89#return; {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:16:23,070 INFO L290 TraceCheckUtils]: 47: Hoare triple {1965#(= (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~b~0#1|)} assume !!(main_~r~0#1 >= 2 * main_~b~0#1); {1999#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:23,071 INFO L272 TraceCheckUtils]: 48: Hoare triple {1999#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) |ULTIMATE.start_main_~r~0#1|)} call __VERIFIER_assert((if main_~r~0#1 >= 2 * main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:23,071 INFO L290 TraceCheckUtils]: 49: Hoare triple {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:23,071 INFO L290 TraceCheckUtils]: 50: Hoare triple {2007#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1851#false} is VALID [2022-02-20 17:16:23,072 INFO L290 TraceCheckUtils]: 51: Hoare triple {1851#false} assume !false; {1851#false} is VALID [2022-02-20 17:16:23,072 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 17:16:23,072 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:16:27,418 INFO L290 TraceCheckUtils]: 51: Hoare triple {1851#false} assume !false; {1851#false} is VALID [2022-02-20 17:16:27,419 INFO L290 TraceCheckUtils]: 50: Hoare triple {2007#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1851#false} is VALID [2022-02-20 17:16:27,420 INFO L290 TraceCheckUtils]: 49: Hoare triple {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:27,420 INFO L272 TraceCheckUtils]: 48: Hoare triple {1999#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) |ULTIMATE.start_main_~r~0#1|)} call __VERIFIER_assert((if main_~r~0#1 >= 2 * main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:27,421 INFO L290 TraceCheckUtils]: 47: Hoare triple {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} assume !!(main_~r~0#1 >= 2 * main_~b~0#1); {1999#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) |ULTIMATE.start_main_~r~0#1|)} is VALID [2022-02-20 17:16:27,421 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1850#true} {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} #89#return; {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:16:27,421 INFO L290 TraceCheckUtils]: 45: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,421 INFO L290 TraceCheckUtils]: 44: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,422 INFO L290 TraceCheckUtils]: 43: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,422 INFO L272 TraceCheckUtils]: 42: Hoare triple {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} call __VERIFIER_assert((if main_~r~0#1 >= 0 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,422 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1850#true} {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} #87#return; {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:16:27,423 INFO L290 TraceCheckUtils]: 40: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,423 INFO L290 TraceCheckUtils]: 39: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,423 INFO L290 TraceCheckUtils]: 38: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,423 INFO L272 TraceCheckUtils]: 37: Hoare triple {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,424 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} {1850#true} #85#return; {2026#(<= (* (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) 2) (* 2 |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:16:27,424 INFO L290 TraceCheckUtils]: 35: Hoare triple {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:16:27,424 INFO L290 TraceCheckUtils]: 34: Hoare triple {2069#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1958#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:16:27,425 INFO L290 TraceCheckUtils]: 33: Hoare triple {1850#true} ~cond := #in~cond; {2069#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:16:27,425 INFO L272 TraceCheckUtils]: 32: Hoare triple {1850#true} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,425 INFO L290 TraceCheckUtils]: 31: Hoare triple {1850#true} assume !false; {1850#true} is VALID [2022-02-20 17:16:27,425 INFO L290 TraceCheckUtils]: 30: Hoare triple {1850#true} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {1850#true} is VALID [2022-02-20 17:16:27,425 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1850#true} {1850#true} #83#return; {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L290 TraceCheckUtils]: 28: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L290 TraceCheckUtils]: 27: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L290 TraceCheckUtils]: 26: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L272 TraceCheckUtils]: 25: Hoare triple {1850#true} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1850#true} {1850#true} #81#return; {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L290 TraceCheckUtils]: 23: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,426 INFO L290 TraceCheckUtils]: 22: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L290 TraceCheckUtils]: 21: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L272 TraceCheckUtils]: 20: Hoare triple {1850#true} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L290 TraceCheckUtils]: 19: Hoare triple {1850#true} assume !false; {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L290 TraceCheckUtils]: 18: Hoare triple {1850#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1850#true} {1850#true} #79#return; {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L290 TraceCheckUtils]: 16: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,427 INFO L290 TraceCheckUtils]: 15: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L290 TraceCheckUtils]: 14: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L272 TraceCheckUtils]: 13: Hoare triple {1850#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1850#true} {1850#true} #77#return; {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L290 TraceCheckUtils]: 11: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L290 TraceCheckUtils]: 10: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L272 TraceCheckUtils]: 8: Hoare triple {1850#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,428 INFO L290 TraceCheckUtils]: 7: Hoare triple {1850#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1850#true} {1850#true} #75#return; {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {1850#true} assume true; {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L290 TraceCheckUtils]: 4: Hoare triple {1850#true} assume !(0 == ~cond); {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L290 TraceCheckUtils]: 3: Hoare triple {1850#true} ~cond := #in~cond; {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L272 TraceCheckUtils]: 2: Hoare triple {1850#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {1850#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1850#true} is VALID [2022-02-20 17:16:27,429 INFO L290 TraceCheckUtils]: 0: Hoare triple {1850#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(14, 2);call #Ultimate.allocInit(12, 3); {1850#true} is VALID [2022-02-20 17:16:27,430 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 17:16:27,430 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:27,430 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [905825226] [2022-02-20 17:16:27,430 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:27,430 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [900160851] [2022-02-20 17:16:27,430 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [900160851] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:16:27,431 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:16:27,431 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-02-20 17:16:27,431 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [820743515] [2022-02-20 17:16:27,431 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:16:27,432 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 52 [2022-02-20 17:16:27,432 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:27,432 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-02-20 17:16:27,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:27,462 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:16:27,462 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:27,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:16:27,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:16:27,463 INFO L87 Difference]: Start difference. First operand 70 states and 91 transitions. Second operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-02-20 17:16:27,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:27,767 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-02-20 17:16:27,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 17:16:27,767 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 52 [2022-02-20 17:16:27,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:27,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-02-20 17:16:27,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 17:16:27,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-02-20 17:16:27,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 17:16:27,769 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 44 transitions. [2022-02-20 17:16:27,799 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:16:27,800 INFO L225 Difference]: With dead ends: 76 [2022-02-20 17:16:27,800 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 17:16:27,800 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 93 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-02-20 17:16:27,801 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 24 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 108 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:27,801 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 120 Invalid, 108 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:16:27,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 17:16:27,839 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-02-20 17:16:27,839 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:27,840 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:27,840 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:27,840 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:27,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:27,842 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-02-20 17:16:27,842 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-02-20 17:16:27,843 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:27,843 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:27,843 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 74 states. [2022-02-20 17:16:27,843 INFO L87 Difference]: Start difference. First operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 74 states. [2022-02-20 17:16:27,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:27,845 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-02-20 17:16:27,845 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-02-20 17:16:27,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:27,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:27,846 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:27,846 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:27,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 43 states have (on average 1.1395348837209303) internal successors, (49), 45 states have internal predecessors, (49), 23 states have call successors, (23), 7 states have call predecessors, (23), 7 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:16:27,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 94 transitions. [2022-02-20 17:16:27,849 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 94 transitions. Word has length 52 [2022-02-20 17:16:27,849 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:27,849 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 94 transitions. [2022-02-20 17:16:27,849 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 7 states have internal predecessors, (23), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-02-20 17:16:27,849 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-02-20 17:16:27,850 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-20 17:16:27,850 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:16:27,850 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:27,870 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 17:16:28,064 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:28,064 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:16:28,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:16:28,065 INFO L85 PathProgramCache]: Analyzing trace with hash 1724367982, now seen corresponding path program 1 times [2022-02-20 17:16:28,065 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:16:28,065 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105630376] [2022-02-20 17:16:28,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:28,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:16:28,076 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:16:28,077 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1046822794] [2022-02-20 17:16:28,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:16:28,077 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:28,077 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:16:28,078 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 17:16:28,079 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 17:16:28,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:28,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 17:16:28,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:16:28,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:16:28,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {2546#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(14, 2);call #Ultimate.allocInit(12, 3); {2546#true} is VALID [2022-02-20 17:16:28,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {2546#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2546#true} is VALID [2022-02-20 17:16:28,333 INFO L272 TraceCheckUtils]: 2: Hoare triple {2546#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 3: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 4: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2546#true} {2546#true} #75#return; {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 7: Hoare triple {2546#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L272 TraceCheckUtils]: 8: Hoare triple {2546#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 9: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,334 INFO L290 TraceCheckUtils]: 10: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L290 TraceCheckUtils]: 11: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2546#true} {2546#true} #77#return; {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L272 TraceCheckUtils]: 13: Hoare triple {2546#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L290 TraceCheckUtils]: 14: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L290 TraceCheckUtils]: 15: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L290 TraceCheckUtils]: 16: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,335 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2546#true} {2546#true} #79#return; {2546#true} is VALID [2022-02-20 17:16:28,336 INFO L290 TraceCheckUtils]: 18: Hoare triple {2546#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,336 INFO L290 TraceCheckUtils]: 19: Hoare triple {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} assume !false; {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,336 INFO L272 TraceCheckUtils]: 20: Hoare triple {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,337 INFO L290 TraceCheckUtils]: 21: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,337 INFO L290 TraceCheckUtils]: 22: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,337 INFO L290 TraceCheckUtils]: 23: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,337 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2546#true} {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} #81#return; {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,338 INFO L272 TraceCheckUtils]: 25: Hoare triple {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,338 INFO L290 TraceCheckUtils]: 26: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,338 INFO L290 TraceCheckUtils]: 27: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,338 INFO L290 TraceCheckUtils]: 28: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,339 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2546#true} {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} #83#return; {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,339 INFO L290 TraceCheckUtils]: 30: Hoare triple {2605#(and (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,339 INFO L290 TraceCheckUtils]: 31: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} assume !false; {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,340 INFO L272 TraceCheckUtils]: 32: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,340 INFO L290 TraceCheckUtils]: 33: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,340 INFO L290 TraceCheckUtils]: 34: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,340 INFO L290 TraceCheckUtils]: 35: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,341 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2546#true} {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} #85#return; {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,341 INFO L272 TraceCheckUtils]: 37: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,341 INFO L290 TraceCheckUtils]: 38: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,341 INFO L290 TraceCheckUtils]: 39: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,341 INFO L290 TraceCheckUtils]: 40: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,342 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2546#true} {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} #87#return; {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,342 INFO L272 TraceCheckUtils]: 42: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} call __VERIFIER_assert((if main_~r~0#1 >= 0 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,342 INFO L290 TraceCheckUtils]: 43: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,343 INFO L290 TraceCheckUtils]: 44: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,343 INFO L290 TraceCheckUtils]: 45: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,343 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2546#true} {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} #89#return; {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,344 INFO L290 TraceCheckUtils]: 47: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} assume !(main_~r~0#1 >= 2 * main_~b~0#1); {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} is VALID [2022-02-20 17:16:28,344 INFO L290 TraceCheckUtils]: 48: Hoare triple {2642#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~a~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0))} main_~r~0#1 := main_~r~0#1 - main_~b~0#1;main_~q~0#1 := main_~q~0#1 + main_~a~0#1; {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} is VALID [2022-02-20 17:16:28,345 INFO L290 TraceCheckUtils]: 49: Hoare triple {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} assume !false; {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} is VALID [2022-02-20 17:16:28,345 INFO L272 TraceCheckUtils]: 50: Hoare triple {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,345 INFO L290 TraceCheckUtils]: 51: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,345 INFO L290 TraceCheckUtils]: 52: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,345 INFO L290 TraceCheckUtils]: 53: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,346 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {2546#true} {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} #81#return; {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} is VALID [2022-02-20 17:16:28,347 INFO L272 TraceCheckUtils]: 55: Hoare triple {2697#(and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_main_~q~0#1| 1))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2719#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:28,347 INFO L290 TraceCheckUtils]: 56: Hoare triple {2719#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2723#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:28,347 INFO L290 TraceCheckUtils]: 57: Hoare triple {2723#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2547#false} is VALID [2022-02-20 17:16:28,347 INFO L290 TraceCheckUtils]: 58: Hoare triple {2547#false} assume !false; {2547#false} is VALID [2022-02-20 17:16:28,348 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-02-20 17:16:28,348 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:16:28,558 INFO L290 TraceCheckUtils]: 58: Hoare triple {2547#false} assume !false; {2547#false} is VALID [2022-02-20 17:16:28,559 INFO L290 TraceCheckUtils]: 57: Hoare triple {2723#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2547#false} is VALID [2022-02-20 17:16:28,560 INFO L290 TraceCheckUtils]: 56: Hoare triple {2719#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2723#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:16:28,560 INFO L272 TraceCheckUtils]: 55: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2719#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:16:28,561 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {2546#true} {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} #81#return; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,561 INFO L290 TraceCheckUtils]: 53: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,561 INFO L290 TraceCheckUtils]: 52: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,562 INFO L290 TraceCheckUtils]: 51: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,562 INFO L272 TraceCheckUtils]: 50: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,562 INFO L290 TraceCheckUtils]: 49: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} assume !false; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,576 INFO L290 TraceCheckUtils]: 48: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} main_~r~0#1 := main_~r~0#1 - main_~b~0#1;main_~q~0#1 := main_~q~0#1 + main_~a~0#1; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,577 INFO L290 TraceCheckUtils]: 47: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} assume !(main_~r~0#1 >= 2 * main_~b~0#1); {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,578 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2546#true} {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} #89#return; {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,578 INFO L290 TraceCheckUtils]: 45: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,578 INFO L290 TraceCheckUtils]: 44: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,578 INFO L290 TraceCheckUtils]: 43: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,578 INFO L272 TraceCheckUtils]: 42: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} call __VERIFIER_assert((if main_~r~0#1 >= 0 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,579 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2546#true} {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} #87#return; {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,579 INFO L290 TraceCheckUtils]: 40: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,579 INFO L290 TraceCheckUtils]: 39: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,579 INFO L290 TraceCheckUtils]: 38: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,579 INFO L272 TraceCheckUtils]: 37: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,579 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2546#true} {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} #85#return; {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,580 INFO L290 TraceCheckUtils]: 33: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,580 INFO L272 TraceCheckUtils]: 32: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,580 INFO L290 TraceCheckUtils]: 31: Hoare triple {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} assume !false; {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,580 INFO L290 TraceCheckUtils]: 30: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} assume !!(main_~r~0#1 >= main_~y~0#1);main_~a~0#1 := 1;main_~b~0#1 := main_~y~0#1; {2761#(= (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) (* (+ |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1|) |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:16:28,585 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2546#true} {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} #83#return; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,585 INFO L290 TraceCheckUtils]: 28: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,585 INFO L290 TraceCheckUtils]: 27: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,585 INFO L290 TraceCheckUtils]: 26: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,585 INFO L272 TraceCheckUtils]: 25: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} call __VERIFIER_assert((if main_~x~0#1 == main_~q~0#1 * main_~y~0#1 + main_~r~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,586 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2546#true} {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} #81#return; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,586 INFO L290 TraceCheckUtils]: 23: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,586 INFO L290 TraceCheckUtils]: 22: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,586 INFO L290 TraceCheckUtils]: 21: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,586 INFO L272 TraceCheckUtils]: 20: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} call __VERIFIER_assert((if main_~b~0#1 == main_~y~0#1 * main_~a~0#1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,586 INFO L290 TraceCheckUtils]: 19: Hoare triple {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} assume !false; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,588 INFO L290 TraceCheckUtils]: 18: Hoare triple {2546#true} main_~q~0#1 := 0;main_~r~0#1 := main_~x~0#1;main_~a~0#1 := 0;main_~b~0#1 := 0; {2739#(= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:16:28,588 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2546#true} {2546#true} #79#return; {2546#true} is VALID [2022-02-20 17:16:28,588 INFO L290 TraceCheckUtils]: 16: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,588 INFO L290 TraceCheckUtils]: 15: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,588 INFO L290 TraceCheckUtils]: 14: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,588 INFO L272 TraceCheckUtils]: 13: Hoare triple {2546#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,588 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2546#true} {2546#true} #77#return; {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L290 TraceCheckUtils]: 11: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L290 TraceCheckUtils]: 10: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L272 TraceCheckUtils]: 8: Hoare triple {2546#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 100 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {2546#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2546#true} {2546#true} #75#return; {2546#true} is VALID [2022-02-20 17:16:28,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {2546#true} assume true; {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L290 TraceCheckUtils]: 4: Hoare triple {2546#true} assume !(0 == ~cond); {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L290 TraceCheckUtils]: 3: Hoare triple {2546#true} ~cond := #in~cond; {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L272 TraceCheckUtils]: 2: Hoare triple {2546#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 100 then 1 else 0)); {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {2546#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~x~0#1, main_~y~0#1, main_~q~0#1, main_~r~0#1, main_~a~0#1, main_~b~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~a~0#1;havoc main_~b~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L290 TraceCheckUtils]: 0: Hoare triple {2546#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(14, 2);call #Ultimate.allocInit(12, 3); {2546#true} is VALID [2022-02-20 17:16:28,590 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-02-20 17:16:28,590 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:16:28,591 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105630376] [2022-02-20 17:16:28,591 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:16:28,591 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1046822794] [2022-02-20 17:16:28,591 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1046822794] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 17:16:28,591 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 17:16:28,591 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [7] total 9 [2022-02-20 17:16:28,591 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [709997316] [2022-02-20 17:16:28,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:16:28,592 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 59 [2022-02-20 17:16:28,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:16:28,592 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-02-20 17:16:28,628 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 17:16:28,628 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 17:16:28,628 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:16:28,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 17:16:28,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:16:28,629 INFO L87 Difference]: Start difference. First operand 74 states and 94 transitions. Second operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-02-20 17:16:28,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:28,926 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-02-20 17:16:28,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:16:28,926 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 59 [2022-02-20 17:16:28,926 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:16:28,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-02-20 17:16:28,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-02-20 17:16:28,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-02-20 17:16:28,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-02-20 17:16:28,928 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-02-20 17:16:28,968 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 17:16:28,968 INFO L225 Difference]: With dead ends: 78 [2022-02-20 17:16:28,969 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 17:16:28,969 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 107 SyntacticMatches, 2 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:16:28,970 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 12 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 45 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 105 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 45 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:16:28,970 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 105 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 45 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:16:28,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 17:16:28,970 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 17:16:28,970 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:16:28,970 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:16:28,970 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:16:28,970 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:16:28,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:28,971 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:16:28,971 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:16:28,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:28,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:28,971 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 17:16:28,971 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 17:16:28,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:16:28,971 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:16:28,971 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:16:28,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:28,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:16:28,971 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:16:28,971 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:16:28,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:16:28,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 17:16:28,972 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 59 [2022-02-20 17:16:28,972 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:16:28,972 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 17:16:28,972 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-02-20 17:16:28,972 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:16:28,972 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:16:28,973 INFO L764 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:16:28,989 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-02-20 17:16:29,174 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:16:29,176 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 17:16:29,908 INFO L858 garLoopResultBuilder]: For program point L64(line 64) no Hoare annotation was computed. [2022-02-20 17:16:29,908 INFO L858 garLoopResultBuilder]: For program point L31(line 31) no Hoare annotation was computed. [2022-02-20 17:16:29,908 INFO L861 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-02-20 17:16:29,908 INFO L858 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-02-20 17:16:29,908 INFO L854 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= 1 |ULTIMATE.start_main_~r~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,908 INFO L854 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= 1 |ULTIMATE.start_main_~r~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,908 INFO L858 garLoopResultBuilder]: For program point L40(lines 38 62) no Hoare annotation was computed. [2022-02-20 17:16:29,908 INFO L861 garLoopResultBuilder]: At program point L65(lines 22 66) the Hoare annotation is: true [2022-02-20 17:16:29,908 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= 1 |ULTIMATE.start_main_~r~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,909 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L861 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 100)) [2022-02-20 17:16:29,909 INFO L858 garLoopResultBuilder]: For program point L50(lines 47 59) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= 1 |ULTIMATE.start_main_~y~0#1|)) (.cse1 (<= |ULTIMATE.start_main_~y~0#1| 100))) (or (and .cse0 (= |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) .cse1) (let ((.cse2 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse2)) .cse0 (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse2)) .cse1)))) [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse1 (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|)) (.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= 1 |ULTIMATE.start_main_~r~0#1|) (<= (* .cse1 2) |ULTIMATE.start_main_~r~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ .cse1 |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,909 INFO L858 garLoopResultBuilder]: For program point L55-1(line 55) no Hoare annotation was computed. [2022-02-20 17:16:29,909 INFO L854 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= 1 |ULTIMATE.start_main_~r~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L47-3(lines 47 59) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L854 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,910 INFO L854 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~y~0#1|))) (and (= |ULTIMATE.start_main_~x~0#1| (+ |ULTIMATE.start_main_~r~0#1| .cse0)) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (+ |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~x~0#1|) (+ (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~r~0#1| .cse0)) (<= |ULTIMATE.start_main_~y~0#1| 100))) [2022-02-20 17:16:29,910 INFO L861 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L861 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-02-20 17:16:29,910 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-02-20 17:16:29,912 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:16:29,913 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:16:29,915 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:16:29,916 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 17:16:29,917 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-02-20 17:16:29,918 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 17:16:29,921 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 17:16:29,921 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-02-20 17:16:29,921 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-02-20 17:16:29,922 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-02-20 17:16:29,922 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-02-20 17:16:29,922 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:16:29,922 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:16:29,922 INFO L163 areAnnotationChecker]: CFG has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-02-20 17:16:29,939 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 05:16:29 BoogieIcfgContainer [2022-02-20 17:16:29,940 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 17:16:29,940 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 17:16:29,940 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 17:16:29,940 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 17:16:29,941 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:16:18" (3/4) ... [2022-02-20 17:16:29,942 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 17:16:29,946 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure assume_abort_if_not [2022-02-20 17:16:29,946 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure __VERIFIER_assert [2022-02-20 17:16:29,951 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 13 nodes and edges [2022-02-20 17:16:29,951 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2022-02-20 17:16:29,951 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 17:16:29,951 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 17:16:29,971 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 17:16:29,971 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 17:16:29,972 INFO L158 Benchmark]: Toolchain (without parser) took 11590.54ms. Allocated memory was 98.6MB in the beginning and 151.0MB in the end (delta: 52.4MB). Free memory was 67.8MB in the beginning and 65.2MB in the end (delta: 2.6MB). Peak memory consumption was 55.2MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,972 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 98.6MB. Free memory was 56.3MB in the beginning and 56.2MB in the end (delta: 77.0kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:16:29,972 INFO L158 Benchmark]: CACSL2BoogieTranslator took 190.79ms. Allocated memory was 98.6MB in the beginning and 125.8MB in the end (delta: 27.3MB). Free memory was 67.5MB in the beginning and 100.5MB in the end (delta: -32.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,972 INFO L158 Benchmark]: Boogie Procedure Inliner took 22.46ms. Allocated memory is still 125.8MB. Free memory was 100.5MB in the beginning and 99.1MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:16:29,973 INFO L158 Benchmark]: Boogie Preprocessor took 14.68ms. Allocated memory is still 125.8MB. Free memory was 99.1MB in the beginning and 98.0MB in the end (delta: 1.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,973 INFO L158 Benchmark]: RCFGBuilder took 267.09ms. Allocated memory is still 125.8MB. Free memory was 98.0MB in the beginning and 85.9MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,973 INFO L158 Benchmark]: TraceAbstraction took 11058.56ms. Allocated memory was 125.8MB in the beginning and 151.0MB in the end (delta: 25.2MB). Free memory was 85.9MB in the beginning and 67.3MB in the end (delta: 18.6MB). Peak memory consumption was 45.4MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,973 INFO L158 Benchmark]: Witness Printer took 31.12ms. Allocated memory is still 151.0MB. Free memory was 67.3MB in the beginning and 65.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:16:29,974 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.19ms. Allocated memory is still 98.6MB. Free memory was 56.3MB in the beginning and 56.2MB in the end (delta: 77.0kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 190.79ms. Allocated memory was 98.6MB in the beginning and 125.8MB in the end (delta: 27.3MB). Free memory was 67.5MB in the beginning and 100.5MB in the end (delta: -32.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 22.46ms. Allocated memory is still 125.8MB. Free memory was 100.5MB in the beginning and 99.1MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 14.68ms. Allocated memory is still 125.8MB. Free memory was 99.1MB in the beginning and 98.0MB in the end (delta: 1.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 267.09ms. Allocated memory is still 125.8MB. Free memory was 98.0MB in the beginning and 85.9MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 11058.56ms. Allocated memory was 125.8MB in the beginning and 151.0MB in the end (delta: 25.2MB). Free memory was 85.9MB in the beginning and 67.3MB in the end (delta: 18.6MB). Peak memory consumption was 45.4MB. Max. memory is 16.1GB. * Witness Printer took 31.12ms. Allocated memory is still 151.0MB. Free memory was 67.3MB in the beginning and 65.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 3 procedures, 34 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 11.0s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.7s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 119 SdHoareTripleChecker+Valid, 0.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 97 mSDsluCounter, 911 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 674 mSDsCounter, 52 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 396 IncrementalHoareTripleChecker+Invalid, 448 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 52 mSolverCounterUnsat, 237 mSDtfsCounter, 396 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 372 GetRequests, 323 SyntacticMatches, 3 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=74occurred in iteration=6, InterpolantAutomatonStates: 42, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.3s AutomataMinimizationTime, 7 MinimizatonAttempts, 11 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 15 LocationsWithAnnotation, 46 PreInvPairs, 77 NumberOfFragments, 282 HoareAnnotationTreeSize, 46 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 15 FomulaSimplificationsInter, 879 FormulaSimplificationTreeSizeReductionInter, 0.7s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 5.9s InterpolantComputationTime, 270 NumberOfCodeBlocks, 270 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 372 ConstructedInterpolants, 0 QuantifiedInterpolants, 815 SizeOfPredicates, 18 NumberOfNonLiveVariables, 649 ConjunctsInSsa, 66 ConjunctsInUnsatCore, 9 InterpolantComputations, 6 PerfectInterpolantSequences, 383/400 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 47]: Loop Invariant Derived loop invariant: (((x == r + q * y && 1 <= y) && 1 <= r) && b + x == a * y + r + q * y) && y <= 100 - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((x == r + q * y && 1 <= y) && b + x == a * y + r + q * y) && y <= 100 - InvariantResult [Line: 22]: Loop Invariant Derived loop invariant: 1 RESULT: Ultimate proved your program to be correct! [2022-02-20 17:16:29,995 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE