./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/egcd-ll_unwindbound2.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/egcd-ll_unwindbound2.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 dad54faad409a509f8fe160c736fa981b1b72909c611eb2d7f09e49e6ca0dfcb --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:19:55,877 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:19:55,880 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:19:55,922 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:19:55,923 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:19:55,926 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:19:55,927 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:19:55,930 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:19:55,931 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:19:55,935 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:19:55,936 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:19:55,937 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:19:55,938 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:19:55,940 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:19:55,941 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:19:55,945 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:19:55,946 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:19:55,946 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:19:55,948 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:19:55,955 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:19:55,957 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:19:55,957 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:19:55,959 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:19:55,960 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:19:55,966 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:19:55,966 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:19:55,966 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:19:55,968 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:19:55,968 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:19:55,969 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:19:55,969 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:19:55,970 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:19:55,972 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:19:55,972 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:19:55,974 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:19:55,974 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:19:55,975 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:19:55,975 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:19:55,975 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:19:55,976 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:19:55,976 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:19:55,977 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:19:56,006 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:19:56,007 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:19:56,007 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:19:56,007 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:19:56,008 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:19:56,008 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:19:56,009 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:19:56,009 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:19:56,009 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:19:56,009 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:19:56,010 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:19:56,011 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:19:56,012 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:19:56,012 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:19:56,012 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:19:56,012 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:19:56,012 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:19:56,013 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:19:56,013 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:19:56,013 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:19:56,013 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:19:56,013 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:19:56,014 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:19:56,014 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:19:56,014 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:19:56,014 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:19:56,014 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:19:56,015 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:19:56,015 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 -> dad54faad409a509f8fe160c736fa981b1b72909c611eb2d7f09e49e6ca0dfcb [2022-02-20 17:19:56,254 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:19:56,271 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:19:56,273 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:19:56,274 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:19:56,275 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:19:56,276 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/egcd-ll_unwindbound2.c [2022-02-20 17:19:56,329 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/613415454/f8dabf7a1263463fa53a4ba2b597d985/FLAGf27afd178 [2022-02-20 17:19:56,778 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:19:56,780 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/egcd-ll_unwindbound2.c [2022-02-20 17:19:56,792 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/613415454/f8dabf7a1263463fa53a4ba2b597d985/FLAGf27afd178 [2022-02-20 17:19:56,809 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/613415454/f8dabf7a1263463fa53a4ba2b597d985 [2022-02-20 17:19:56,811 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:19:56,814 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:19:56,816 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:19:56,816 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:19:56,819 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:19:56,820 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:19:56" (1/1) ... [2022-02-20 17:19:56,821 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5613d618 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:56, skipping insertion in model container [2022-02-20 17:19:56,821 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:19:56" (1/1) ... [2022-02-20 17:19:56,827 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:19:56,839 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:19:56,999 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/egcd-ll_unwindbound2.c[489,502] [2022-02-20 17:19:57,035 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:19:57,046 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:19:57,056 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/egcd-ll_unwindbound2.c[489,502] [2022-02-20 17:19:57,077 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:19:57,093 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:19:57,093 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57 WrapperNode [2022-02-20 17:19:57,093 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:19:57,095 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:19:57,095 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:19:57,095 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:19:57,101 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:19:57" (1/1) ... [2022-02-20 17:19:57,107 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:19:57" (1/1) ... [2022-02-20 17:19:57,137 INFO L137 Inliner]: procedures = 14, calls = 16, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 59 [2022-02-20 17:19:57,138 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:19:57,139 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:19:57,139 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:19:57,139 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:19:57,145 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,146 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,154 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,155 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,162 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,168 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,171 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,173 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:19:57,176 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:19:57,176 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:19:57,177 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:19:57,178 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (1/1) ... [2022-02-20 17:19:57,183 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:19:57,192 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:19:57,204 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:19:57,234 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:19:57,255 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:19:57,255 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:19:57,255 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:19:57,256 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:19:57,256 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:19:57,256 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:19:57,256 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:19:57,256 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:19:57,309 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:19:57,311 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:19:57,527 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:19:57,532 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:19:57,533 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 17:19:57,534 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:19:57 BoogieIcfgContainer [2022-02-20 17:19:57,534 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:19:57,536 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:19:57,536 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:19:57,538 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:19:57,538 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:19:56" (1/3) ... [2022-02-20 17:19:57,539 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6ad3a699 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:19:57, skipping insertion in model container [2022-02-20 17:19:57,539 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:19:57" (2/3) ... [2022-02-20 17:19:57,540 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6ad3a699 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:19:57, skipping insertion in model container [2022-02-20 17:19:57,540 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:19:57" (3/3) ... [2022-02-20 17:19:57,541 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound2.c [2022-02-20 17:19:57,544 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:19:57,544 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:19:57,581 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:19:57,586 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:19:57,587 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:19:57,602 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 17 states have (on average 1.411764705882353) internal successors, (24), 18 states have internal predecessors, (24), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:19:57,606 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 17:19:57,606 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:19:57,607 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:19:57,607 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:19:57,611 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:19:57,612 INFO L85 PathProgramCache]: Analyzing trace with hash 1165920622, now seen corresponding path program 1 times [2022-02-20 17:19:57,619 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:19:57,620 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [650709702] [2022-02-20 17:19:57,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:57,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:19:57,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:57,776 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:19:57,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:57,804 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:19:57,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-02-20 17:19:57,805 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} assume true; {34#false} is VALID [2022-02-20 17:19:57,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {33#true} #61#return; {34#false} is VALID [2022-02-20 17:19:57,807 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-02-20 17:19:57,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:57,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:19:57,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-02-20 17:19:57,824 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} assume true; {34#false} is VALID [2022-02-20 17:19:57,824 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {34#false} #63#return; {34#false} is VALID [2022-02-20 17:19:57,825 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-02-20 17:19:57,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {33#true} is VALID [2022-02-20 17:19:57,826 INFO L272 TraceCheckUtils]: 2: Hoare triple {33#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {33#true} is VALID [2022-02-20 17:19:57,826 INFO L290 TraceCheckUtils]: 3: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:19:57,827 INFO L290 TraceCheckUtils]: 4: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-02-20 17:19:57,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {34#false} assume true; {34#false} is VALID [2022-02-20 17:19:57,828 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {34#false} {33#true} #61#return; {34#false} is VALID [2022-02-20 17:19:57,828 INFO L272 TraceCheckUtils]: 7: Hoare triple {34#false} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {33#true} is VALID [2022-02-20 17:19:57,828 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:19:57,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-02-20 17:19:57,829 INFO L290 TraceCheckUtils]: 10: Hoare triple {34#false} assume true; {34#false} is VALID [2022-02-20 17:19:57,830 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {34#false} {34#false} #63#return; {34#false} is VALID [2022-02-20 17:19:57,831 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {34#false} is VALID [2022-02-20 17:19:57,832 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-02-20 17:19:57,832 INFO L272 TraceCheckUtils]: 14: Hoare triple {34#false} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {34#false} is VALID [2022-02-20 17:19:57,832 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-02-20 17:19:57,833 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-02-20 17:19:57,833 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-02-20 17:19:57,834 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:19:57,834 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:19:57,835 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [650709702] [2022-02-20 17:19:57,836 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [650709702] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:19:57,836 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:19:57,836 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:19:57,837 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1093177403] [2022-02-20 17:19:57,839 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:19:57,844 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 17:19:57,846 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:19:57,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:19:57,872 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:57,873 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:19:57,873 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:19:57,891 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:19:57,892 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:19:57,894 INFO L87 Difference]: Start difference. First operand has 30 states, 17 states have (on average 1.411764705882353) internal successors, (24), 18 states have internal predecessors, (24), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:19:57,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:57,954 INFO L93 Difference]: Finished difference Result 57 states and 89 transitions. [2022-02-20 17:19:57,955 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:19:57,955 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 17:19:57,955 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:19:57,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:19:57,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 89 transitions. [2022-02-20 17:19:57,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:19:57,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 89 transitions. [2022-02-20 17:19:57,971 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 89 transitions. [2022-02-20 17:19:58,068 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:58,076 INFO L225 Difference]: With dead ends: 57 [2022-02-20 17:19:58,077 INFO L226 Difference]: Without dead ends: 26 [2022-02-20 17:19:58,079 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 8 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:19:58,082 INFO L933 BasicCegarLoop]: 39 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, 39 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:19:58,083 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:19:58,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-02-20 17:19:58,108 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 26. [2022-02-20 17:19:58,109 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:19:58,110 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,110 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,111 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:58,117 INFO L93 Difference]: Finished difference Result 26 states and 35 transitions. [2022-02-20 17:19:58,117 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:19:58,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:58,119 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:58,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 26 states. [2022-02-20 17:19:58,121 INFO L87 Difference]: Start difference. First operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 26 states. [2022-02-20 17:19:58,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:58,127 INFO L93 Difference]: Finished difference Result 26 states and 35 transitions. [2022-02-20 17:19:58,127 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:19:58,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:58,129 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:58,129 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:19:58,129 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:19:58,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 35 transitions. [2022-02-20 17:19:58,136 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 35 transitions. Word has length 18 [2022-02-20 17:19:58,136 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:19:58,136 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-02-20 17:19:58,137 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:19:58,137 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:19:58,138 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:19:58,138 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:19:58,139 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:19:58,139 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:19:58,140 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:19:58,141 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:19:58,141 INFO L85 PathProgramCache]: Analyzing trace with hash -542319922, now seen corresponding path program 1 times [2022-02-20 17:19:58,141 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:19:58,142 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1922798991] [2022-02-20 17:19:58,142 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:58,142 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:19:58,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:58,215 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:19:58,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:58,231 INFO L290 TraceCheckUtils]: 0: Hoare triple {217#true} ~cond := #in~cond; {217#true} is VALID [2022-02-20 17:19:58,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {217#true} assume !(0 == ~cond); {217#true} is VALID [2022-02-20 17:19:58,232 INFO L290 TraceCheckUtils]: 2: Hoare triple {217#true} assume true; {217#true} is VALID [2022-02-20 17:19:58,234 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {217#true} {219#(= ~counter~0 0)} #61#return; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,234 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-02-20 17:19:58,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:58,255 INFO L290 TraceCheckUtils]: 0: Hoare triple {217#true} ~cond := #in~cond; {217#true} is VALID [2022-02-20 17:19:58,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {217#true} assume !(0 == ~cond); {217#true} is VALID [2022-02-20 17:19:58,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {217#true} assume true; {217#true} is VALID [2022-02-20 17:19:58,257 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {217#true} {219#(= ~counter~0 0)} #63#return; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,258 INFO L290 TraceCheckUtils]: 0: Hoare triple {217#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,258 INFO L290 TraceCheckUtils]: 1: Hoare triple {219#(= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,259 INFO L272 TraceCheckUtils]: 2: Hoare triple {219#(= ~counter~0 0)} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {217#true} is VALID [2022-02-20 17:19:58,259 INFO L290 TraceCheckUtils]: 3: Hoare triple {217#true} ~cond := #in~cond; {217#true} is VALID [2022-02-20 17:19:58,259 INFO L290 TraceCheckUtils]: 4: Hoare triple {217#true} assume !(0 == ~cond); {217#true} is VALID [2022-02-20 17:19:58,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {217#true} assume true; {217#true} is VALID [2022-02-20 17:19:58,260 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {217#true} {219#(= ~counter~0 0)} #61#return; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,260 INFO L272 TraceCheckUtils]: 7: Hoare triple {219#(= ~counter~0 0)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {217#true} is VALID [2022-02-20 17:19:58,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {217#true} ~cond := #in~cond; {217#true} is VALID [2022-02-20 17:19:58,261 INFO L290 TraceCheckUtils]: 9: Hoare triple {217#true} assume !(0 == ~cond); {217#true} is VALID [2022-02-20 17:19:58,261 INFO L290 TraceCheckUtils]: 10: Hoare triple {217#true} assume true; {217#true} is VALID [2022-02-20 17:19:58,262 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {217#true} {219#(= ~counter~0 0)} #63#return; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,262 INFO L290 TraceCheckUtils]: 12: Hoare triple {219#(= ~counter~0 0)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {219#(= ~counter~0 0)} is VALID [2022-02-20 17:19:58,263 INFO L290 TraceCheckUtils]: 13: Hoare triple {219#(= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {228#(= |ULTIMATE.start_main_#t~post6#1| 0)} is VALID [2022-02-20 17:19:58,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {228#(= |ULTIMATE.start_main_#t~post6#1| 0)} assume !(main_#t~post6#1 < 2);havoc main_#t~post6#1; {218#false} is VALID [2022-02-20 17:19:58,264 INFO L272 TraceCheckUtils]: 15: Hoare triple {218#false} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {218#false} is VALID [2022-02-20 17:19:58,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {218#false} ~cond := #in~cond; {218#false} is VALID [2022-02-20 17:19:58,265 INFO L290 TraceCheckUtils]: 17: Hoare triple {218#false} assume 0 == ~cond; {218#false} is VALID [2022-02-20 17:19:58,268 INFO L290 TraceCheckUtils]: 18: Hoare triple {218#false} assume !false; {218#false} is VALID [2022-02-20 17:19:58,269 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:19:58,269 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:19:58,269 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1922798991] [2022-02-20 17:19:58,269 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1922798991] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:19:58,270 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:19:58,270 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 17:19:58,270 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [997350863] [2022-02-20 17:19:58,270 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:19:58,273 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:19:58,274 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:19:58,274 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,291 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:58,291 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:19:58,292 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:19:58,292 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:19:58,292 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:19:58,293 INFO L87 Difference]: Start difference. First operand 26 states and 35 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:58,429 INFO L93 Difference]: Finished difference Result 38 states and 50 transitions. [2022-02-20 17:19:58,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:19:58,430 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:19:58,430 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:19:58,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 17:19:58,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 17:19:58,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-02-20 17:19:58,548 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:58,549 INFO L225 Difference]: With dead ends: 38 [2022-02-20 17:19:58,550 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:19:58,550 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:19:58,551 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 5 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:19:58,552 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 87 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:19:58,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:19:58,556 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:19:58,571 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:19:58,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,572 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,573 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:58,575 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:19:58,575 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:19:58,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:58,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:58,577 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 28 states. [2022-02-20 17:19:58,577 INFO L87 Difference]: Start difference. First operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 28 states. [2022-02-20 17:19:58,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:58,580 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:19:58,580 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:19:58,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:58,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:58,581 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:19:58,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:19:58,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:19:58,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 37 transitions. [2022-02-20 17:19:58,584 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 37 transitions. Word has length 19 [2022-02-20 17:19:58,584 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:19:58,599 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-02-20 17:19:58,600 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,600 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:19:58,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:19:58,601 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:19:58,601 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:19:58,601 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 17:19:58,601 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:19:58,602 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:19:58,602 INFO L85 PathProgramCache]: Analyzing trace with hash -540651626, now seen corresponding path program 1 times [2022-02-20 17:19:58,602 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:19:58,602 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1075625980] [2022-02-20 17:19:58,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:58,603 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:19:58,618 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:19:58,619 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [157382357] [2022-02-20 17:19:58,619 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:58,620 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:19:58,620 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:19:58,623 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:19:58,654 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:19:58,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:58,674 INFO L263 TraceCheckSpWp]: Trace formula consists of 75 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:19:58,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:58,693 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:19:58,868 INFO L290 TraceCheckUtils]: 0: Hoare triple {384#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {384#true} is VALID [2022-02-20 17:19:58,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {384#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {384#true} is VALID [2022-02-20 17:19:58,869 INFO L272 TraceCheckUtils]: 2: Hoare triple {384#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {384#true} is VALID [2022-02-20 17:19:58,869 INFO L290 TraceCheckUtils]: 3: Hoare triple {384#true} ~cond := #in~cond; {384#true} is VALID [2022-02-20 17:19:58,869 INFO L290 TraceCheckUtils]: 4: Hoare triple {384#true} assume !(0 == ~cond); {384#true} is VALID [2022-02-20 17:19:58,869 INFO L290 TraceCheckUtils]: 5: Hoare triple {384#true} assume true; {384#true} is VALID [2022-02-20 17:19:58,870 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {384#true} {384#true} #61#return; {384#true} is VALID [2022-02-20 17:19:58,870 INFO L272 TraceCheckUtils]: 7: Hoare triple {384#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {384#true} is VALID [2022-02-20 17:19:58,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {384#true} ~cond := #in~cond; {384#true} is VALID [2022-02-20 17:19:58,870 INFO L290 TraceCheckUtils]: 9: Hoare triple {384#true} assume !(0 == ~cond); {384#true} is VALID [2022-02-20 17:19:58,871 INFO L290 TraceCheckUtils]: 10: Hoare triple {384#true} assume true; {384#true} is VALID [2022-02-20 17:19:58,871 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {384#true} {384#true} #63#return; {384#true} is VALID [2022-02-20 17:19:58,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {384#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:19:58,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:19:58,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:19:58,874 INFO L272 TraceCheckUtils]: 15: Hoare triple {425#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {435#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:19:58,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {435#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {439#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:19:58,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {439#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {385#false} is VALID [2022-02-20 17:19:58,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {385#false} assume !false; {385#false} is VALID [2022-02-20 17:19:58,876 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:19:58,876 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:19:58,877 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:19:58,877 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1075625980] [2022-02-20 17:19:58,877 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:19:58,877 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [157382357] [2022-02-20 17:19:58,877 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [157382357] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:19:58,878 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:19:58,878 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:19:58,878 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1363153203] [2022-02-20 17:19:58,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:19:58,879 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:19:58,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:19:58,879 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:58,895 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:58,895 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:19:58,895 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:19:58,896 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:19:58,896 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:19:58,897 INFO L87 Difference]: Start difference. First operand 28 states and 37 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:59,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:59,088 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-02-20 17:19:59,088 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:19:59,088 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:19:59,089 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:19:59,089 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:59,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 17:19:59,104 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:59,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 17:19:59,109 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-02-20 17:19:59,183 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:59,187 INFO L225 Difference]: With dead ends: 45 [2022-02-20 17:19:59,187 INFO L226 Difference]: Without dead ends: 43 [2022-02-20 17:19:59,188 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 15 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:19:59,192 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 8 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:19:59,193 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 130 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:19:59,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-02-20 17:19:59,200 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2022-02-20 17:19:59,200 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:19:59,200 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:19:59,201 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:19:59,202 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:19:59,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:59,208 INFO L93 Difference]: Finished difference Result 43 states and 60 transitions. [2022-02-20 17:19:59,209 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 60 transitions. [2022-02-20 17:19:59,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:59,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:59,210 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 43 states. [2022-02-20 17:19:59,211 INFO L87 Difference]: Start difference. First operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 43 states. [2022-02-20 17:19:59,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:19:59,214 INFO L93 Difference]: Finished difference Result 43 states and 60 transitions. [2022-02-20 17:19:59,215 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 60 transitions. [2022-02-20 17:19:59,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:19:59,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:19:59,216 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:19:59,216 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:19:59,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:19:59,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 59 transitions. [2022-02-20 17:19:59,220 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 59 transitions. Word has length 19 [2022-02-20 17:19:59,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:19:59,220 INFO L470 AbstractCegarLoop]: Abstraction has 42 states and 59 transitions. [2022-02-20 17:19:59,220 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:19:59,220 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 59 transitions. [2022-02-20 17:19:59,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 17:19:59,221 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:19:59,221 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:19:59,242 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 17:19:59,435 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:19:59,436 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:19:59,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:19:59,436 INFO L85 PathProgramCache]: Analyzing trace with hash -276555716, now seen corresponding path program 1 times [2022-02-20 17:19:59,436 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:19:59,436 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1843415231] [2022-02-20 17:19:59,437 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:59,437 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:19:59,460 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:19:59,461 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [21294967] [2022-02-20 17:19:59,461 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:19:59,461 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:19:59,461 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:19:59,462 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:19:59,499 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:19:59,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:59,515 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 17:19:59,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:19:59,527 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:19:59,800 INFO L290 TraceCheckUtils]: 0: Hoare triple {663#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {663#true} is VALID [2022-02-20 17:19:59,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {663#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} is VALID [2022-02-20 17:19:59,801 INFO L272 TraceCheckUtils]: 2: Hoare triple {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {663#true} is VALID [2022-02-20 17:19:59,801 INFO L290 TraceCheckUtils]: 3: Hoare triple {663#true} ~cond := #in~cond; {663#true} is VALID [2022-02-20 17:19:59,801 INFO L290 TraceCheckUtils]: 4: Hoare triple {663#true} assume !(0 == ~cond); {663#true} is VALID [2022-02-20 17:19:59,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {663#true} assume true; {663#true} is VALID [2022-02-20 17:19:59,804 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {663#true} {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} #61#return; {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} is VALID [2022-02-20 17:19:59,804 INFO L272 TraceCheckUtils]: 7: Hoare triple {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {663#true} is VALID [2022-02-20 17:19:59,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {663#true} ~cond := #in~cond; {693#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:19:59,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {693#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {697#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:19:59,806 INFO L290 TraceCheckUtils]: 10: Hoare triple {697#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {697#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:19:59,807 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {697#(not (= |assume_abort_if_not_#in~cond| 0))} {671#(<= |ULTIMATE.start_main_~y~0#1| 2147483647)} #63#return; {704#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} is VALID [2022-02-20 17:19:59,810 INFO L290 TraceCheckUtils]: 12: Hoare triple {704#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} is VALID [2022-02-20 17:19:59,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} is VALID [2022-02-20 17:19:59,813 INFO L290 TraceCheckUtils]: 14: Hoare triple {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} is VALID [2022-02-20 17:19:59,813 INFO L272 TraceCheckUtils]: 15: Hoare triple {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {663#true} is VALID [2022-02-20 17:19:59,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {663#true} ~cond := #in~cond; {663#true} is VALID [2022-02-20 17:19:59,814 INFO L290 TraceCheckUtils]: 17: Hoare triple {663#true} assume !(0 == ~cond); {663#true} is VALID [2022-02-20 17:19:59,814 INFO L290 TraceCheckUtils]: 18: Hoare triple {663#true} assume true; {663#true} is VALID [2022-02-20 17:19:59,815 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {663#true} {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} #65#return; {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} is VALID [2022-02-20 17:19:59,817 INFO L272 TraceCheckUtils]: 20: Hoare triple {708#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (<= |ULTIMATE.start_main_~y~0#1| 2147483647))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {733#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:19:59,819 INFO L290 TraceCheckUtils]: 21: Hoare triple {733#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {737#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:19:59,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {737#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {664#false} is VALID [2022-02-20 17:19:59,820 INFO L290 TraceCheckUtils]: 23: Hoare triple {664#false} assume !false; {664#false} is VALID [2022-02-20 17:19:59,820 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 17:19:59,821 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:19:59,821 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:19:59,821 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1843415231] [2022-02-20 17:19:59,821 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:19:59,821 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [21294967] [2022-02-20 17:19:59,822 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [21294967] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:19:59,822 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:19:59,822 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 17:19:59,822 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1357003610] [2022-02-20 17:19:59,822 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:19:59,823 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-02-20 17:19:59,823 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:19:59,824 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), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:19:59,851 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:19:59,851 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:19:59,851 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:19:59,852 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:19:59,852 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:19:59,853 INFO L87 Difference]: Start difference. First operand 42 states and 59 transitions. Second operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:20:00,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:00,276 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-02-20 17:20:00,276 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:20:00,276 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-02-20 17:20:00,277 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:00,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:20:00,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-02-20 17:20:00,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:20:00,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-02-20 17:20:00,293 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 60 transitions. [2022-02-20 17:20:00,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:00,362 INFO L225 Difference]: With dead ends: 49 [2022-02-20 17:20:00,363 INFO L226 Difference]: Without dead ends: 47 [2022-02-20 17:20:00,364 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:20:00,365 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 21 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:00,368 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 206 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:20:00,370 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-02-20 17:20:00,396 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-02-20 17:20:00,397 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:00,397 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:00,398 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:00,398 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:00,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:00,402 INFO L93 Difference]: Finished difference Result 47 states and 63 transitions. [2022-02-20 17:20:00,402 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 63 transitions. [2022-02-20 17:20:00,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:00,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:00,404 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 47 states. [2022-02-20 17:20:00,404 INFO L87 Difference]: Start difference. First operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 47 states. [2022-02-20 17:20:00,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:00,407 INFO L93 Difference]: Finished difference Result 47 states and 63 transitions. [2022-02-20 17:20:00,407 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 63 transitions. [2022-02-20 17:20:00,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:00,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:00,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:00,408 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:00,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:00,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 62 transitions. [2022-02-20 17:20:00,411 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 62 transitions. Word has length 24 [2022-02-20 17:20:00,411 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:00,411 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 62 transitions. [2022-02-20 17:20:00,412 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.125) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:20:00,412 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 62 transitions. [2022-02-20 17:20:00,412 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:20:00,412 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:00,413 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:00,442 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:00,642 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2022-02-20 17:20:00,642 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:00,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:00,643 INFO L85 PathProgramCache]: Analyzing trace with hash -1836785898, now seen corresponding path program 1 times [2022-02-20 17:20:00,643 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:00,643 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1469500378] [2022-02-20 17:20:00,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:00,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:00,668 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:00,669 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1905440399] [2022-02-20 17:20:00,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:00,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:00,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:00,672 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:20:00,673 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:20:00,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:00,711 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 17:20:00,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:00,721 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:01,107 INFO L290 TraceCheckUtils]: 0: Hoare triple {981#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {981#true} is VALID [2022-02-20 17:20:01,108 INFO L290 TraceCheckUtils]: 1: Hoare triple {981#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {989#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} is VALID [2022-02-20 17:20:01,109 INFO L272 TraceCheckUtils]: 2: Hoare triple {989#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {981#true} is VALID [2022-02-20 17:20:01,109 INFO L290 TraceCheckUtils]: 3: Hoare triple {981#true} ~cond := #in~cond; {996#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:20:01,110 INFO L290 TraceCheckUtils]: 4: Hoare triple {996#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1000#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:20:01,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {1000#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1000#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:20:01,113 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1000#(not (= |assume_abort_if_not_#in~cond| 0))} {989#(<= |ULTIMATE.start_main_~x~0#1| 2147483647)} #61#return; {1007#(and (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (<= 1 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:20:01,114 INFO L272 TraceCheckUtils]: 7: Hoare triple {1007#(and (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (<= 1 |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {981#true} is VALID [2022-02-20 17:20:01,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {981#true} ~cond := #in~cond; {996#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:20:01,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {996#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1000#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:20:01,115 INFO L290 TraceCheckUtils]: 10: Hoare triple {1000#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1000#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:20:01,116 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1000#(not (= |assume_abort_if_not_#in~cond| 0))} {1007#(and (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (<= 1 |ULTIMATE.start_main_~x~0#1|))} #63#return; {1023#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (<= 1 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:20:01,117 INFO L290 TraceCheckUtils]: 12: Hoare triple {1023#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (<= 1 |ULTIMATE.start_main_~x~0#1|))} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:01,118 INFO L290 TraceCheckUtils]: 13: Hoare triple {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:01,118 INFO L290 TraceCheckUtils]: 14: Hoare triple {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:01,119 INFO L272 TraceCheckUtils]: 15: Hoare triple {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {981#true} is VALID [2022-02-20 17:20:01,119 INFO L290 TraceCheckUtils]: 16: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-02-20 17:20:01,119 INFO L290 TraceCheckUtils]: 17: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-02-20 17:20:01,119 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} assume true; {981#true} is VALID [2022-02-20 17:20:01,121 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {981#true} {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #65#return; {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:01,122 INFO L272 TraceCheckUtils]: 20: Hoare triple {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {981#true} is VALID [2022-02-20 17:20:01,122 INFO L290 TraceCheckUtils]: 21: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-02-20 17:20:01,122 INFO L290 TraceCheckUtils]: 22: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-02-20 17:20:01,122 INFO L290 TraceCheckUtils]: 23: Hoare triple {981#true} assume true; {981#true} is VALID [2022-02-20 17:20:01,132 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {981#true} {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #67#return; {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:01,133 INFO L272 TraceCheckUtils]: 25: Hoare triple {1027#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~x~0#1| 2147483647) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1067#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:01,134 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1071#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:01,134 INFO L290 TraceCheckUtils]: 27: Hoare triple {1071#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-02-20 17:20:01,134 INFO L290 TraceCheckUtils]: 28: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-02-20 17:20:01,135 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 17:20:01,135 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:01,135 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:01,135 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1469500378] [2022-02-20 17:20:01,136 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:01,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1905440399] [2022-02-20 17:20:01,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1905440399] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:01,136 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:01,136 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 17:20:01,136 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1460592510] [2022-02-20 17:20:01,137 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:01,137 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 17:20:01,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:01,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:20:01,161 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:01,162 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:20:01,162 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:01,163 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:20:01,163 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:20:01,163 INFO L87 Difference]: Start difference. First operand 46 states and 62 transitions. Second operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:20:01,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:01,646 INFO L93 Difference]: Finished difference Result 71 states and 103 transitions. [2022-02-20 17:20:01,646 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 17:20:01,647 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 17:20:01,647 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:01,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:20:01,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60 transitions. [2022-02-20 17:20:01,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:20:01,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60 transitions. [2022-02-20 17:20:01,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 60 transitions. [2022-02-20 17:20:01,717 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:01,719 INFO L225 Difference]: With dead ends: 71 [2022-02-20 17:20:01,719 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 17:20:01,720 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-02-20 17:20:01,720 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 31 mSDsluCounter, 168 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:01,721 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 201 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:20:01,721 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 17:20:01,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2022-02-20 17:20:01,817 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:01,818 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-02-20 17:20:01,820 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-02-20 17:20:01,823 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-02-20 17:20:01,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:01,829 INFO L93 Difference]: Finished difference Result 67 states and 96 transitions. [2022-02-20 17:20:01,829 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 96 transitions. [2022-02-20 17:20:01,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:01,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:01,835 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 67 states. [2022-02-20 17:20:01,835 INFO L87 Difference]: Start difference. First operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 67 states. [2022-02-20 17:20:01,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:01,842 INFO L93 Difference]: Finished difference Result 67 states and 96 transitions. [2022-02-20 17:20:01,842 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 96 transitions. [2022-02-20 17:20:01,843 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:01,843 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:01,843 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:01,844 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:01,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 35 states have (on average 1.3428571428571427) internal successors, (47), 39 states have internal predecessors, (47), 26 states have call successors, (26), 5 states have call predecessors, (26), 5 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-02-20 17:20:01,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 96 transitions. [2022-02-20 17:20:01,848 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 96 transitions. Word has length 29 [2022-02-20 17:20:01,848 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:01,848 INFO L470 AbstractCegarLoop]: Abstraction has 67 states and 96 transitions. [2022-02-20 17:20:01,849 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:20:01,849 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 96 transitions. [2022-02-20 17:20:01,849 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 17:20:01,850 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:01,850 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:01,873 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:20:02,071 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:02,072 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:02,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:02,072 INFO L85 PathProgramCache]: Analyzing trace with hash 1071030291, now seen corresponding path program 1 times [2022-02-20 17:20:02,072 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:02,072 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [680868505] [2022-02-20 17:20:02,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:02,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:02,085 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:02,085 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1950032474] [2022-02-20 17:20:02,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:02,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:02,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:02,087 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:20:02,123 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:20:02,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:02,134 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 17:20:02,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:02,147 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:02,246 INFO L290 TraceCheckUtils]: 0: Hoare triple {1425#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {1425#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L272 TraceCheckUtils]: 2: Hoare triple {1425#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L290 TraceCheckUtils]: 3: Hoare triple {1425#true} ~cond := #in~cond; {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L290 TraceCheckUtils]: 4: Hoare triple {1425#true} assume !(0 == ~cond); {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {1425#true} assume true; {1425#true} is VALID [2022-02-20 17:20:02,247 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1425#true} {1425#true} #61#return; {1425#true} is VALID [2022-02-20 17:20:02,248 INFO L272 TraceCheckUtils]: 7: Hoare triple {1425#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1425#true} is VALID [2022-02-20 17:20:02,248 INFO L290 TraceCheckUtils]: 8: Hoare triple {1425#true} ~cond := #in~cond; {1425#true} is VALID [2022-02-20 17:20:02,248 INFO L290 TraceCheckUtils]: 9: Hoare triple {1425#true} assume !(0 == ~cond); {1425#true} is VALID [2022-02-20 17:20:02,248 INFO L290 TraceCheckUtils]: 10: Hoare triple {1425#true} assume true; {1425#true} is VALID [2022-02-20 17:20:02,248 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1425#true} {1425#true} #63#return; {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L290 TraceCheckUtils]: 12: Hoare triple {1425#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L290 TraceCheckUtils]: 13: Hoare triple {1425#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L290 TraceCheckUtils]: 14: Hoare triple {1425#true} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L272 TraceCheckUtils]: 15: Hoare triple {1425#true} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L290 TraceCheckUtils]: 16: Hoare triple {1425#true} ~cond := #in~cond; {1425#true} is VALID [2022-02-20 17:20:02,249 INFO L290 TraceCheckUtils]: 17: Hoare triple {1425#true} assume !(0 == ~cond); {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L290 TraceCheckUtils]: 18: Hoare triple {1425#true} assume true; {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1425#true} {1425#true} #65#return; {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L272 TraceCheckUtils]: 20: Hoare triple {1425#true} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L290 TraceCheckUtils]: 21: Hoare triple {1425#true} ~cond := #in~cond; {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L290 TraceCheckUtils]: 22: Hoare triple {1425#true} assume !(0 == ~cond); {1425#true} is VALID [2022-02-20 17:20:02,250 INFO L290 TraceCheckUtils]: 23: Hoare triple {1425#true} assume true; {1425#true} is VALID [2022-02-20 17:20:02,251 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1425#true} {1425#true} #67#return; {1425#true} is VALID [2022-02-20 17:20:02,251 INFO L272 TraceCheckUtils]: 25: Hoare triple {1425#true} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1425#true} is VALID [2022-02-20 17:20:02,251 INFO L290 TraceCheckUtils]: 26: Hoare triple {1425#true} ~cond := #in~cond; {1425#true} is VALID [2022-02-20 17:20:02,251 INFO L290 TraceCheckUtils]: 27: Hoare triple {1425#true} assume !(0 == ~cond); {1425#true} is VALID [2022-02-20 17:20:02,251 INFO L290 TraceCheckUtils]: 28: Hoare triple {1425#true} assume true; {1425#true} is VALID [2022-02-20 17:20:02,252 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1425#true} {1425#true} #69#return; {1425#true} is VALID [2022-02-20 17:20:02,252 INFO L290 TraceCheckUtils]: 30: Hoare triple {1425#true} assume !(main_~a~0#1 != main_~b~0#1); {1520#(= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:20:02,253 INFO L272 TraceCheckUtils]: 31: Hoare triple {1520#(= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {1524#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:02,253 INFO L290 TraceCheckUtils]: 32: Hoare triple {1524#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1528#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:02,254 INFO L290 TraceCheckUtils]: 33: Hoare triple {1528#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1426#false} is VALID [2022-02-20 17:20:02,254 INFO L290 TraceCheckUtils]: 34: Hoare triple {1426#false} assume !false; {1426#false} is VALID [2022-02-20 17:20:02,254 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:20:02,254 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:02,255 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:02,255 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [680868505] [2022-02-20 17:20:02,255 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:02,255 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1950032474] [2022-02-20 17:20:02,255 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1950032474] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:02,255 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:02,256 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:20:02,256 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1295232858] [2022-02-20 17:20:02,256 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:02,256 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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 35 [2022-02-20 17:20:02,257 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:02,257 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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:20:02,276 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:20:02,276 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:20:02,276 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:02,277 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:20:02,277 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:20:02,277 INFO L87 Difference]: Start difference. First operand 67 states and 96 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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:20:02,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:02,538 INFO L93 Difference]: Finished difference Result 83 states and 119 transitions. [2022-02-20 17:20:02,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:20:02,538 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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 35 [2022-02-20 17:20:02,539 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:02,539 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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:20:02,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-02-20 17:20:02,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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:20:02,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-02-20 17:20:02,542 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-02-20 17:20:02,587 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:02,590 INFO L225 Difference]: With dead ends: 83 [2022-02-20 17:20:02,590 INFO L226 Difference]: Without dead ends: 81 [2022-02-20 17:20:02,591 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 31 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:20:02,591 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 5 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:02,592 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 137 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:20:02,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-02-20 17:20:02,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-02-20 17:20:02,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:02,667 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:02,668 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:02,668 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:02,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:02,673 INFO L93 Difference]: Finished difference Result 81 states and 117 transitions. [2022-02-20 17:20:02,673 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 117 transitions. [2022-02-20 17:20:02,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:02,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:02,674 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 81 states. [2022-02-20 17:20:02,675 INFO L87 Difference]: Start difference. First operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 81 states. [2022-02-20 17:20:02,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:02,679 INFO L93 Difference]: Finished difference Result 81 states and 117 transitions. [2022-02-20 17:20:02,679 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 117 transitions. [2022-02-20 17:20:02,680 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:02,680 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:02,680 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:02,680 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:02,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 45 states have internal predecessors, (50), 29 states have call successors, (29), 6 states have call predecessors, (29), 6 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:02,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 105 transitions. [2022-02-20 17:20:02,684 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 105 transitions. Word has length 35 [2022-02-20 17:20:02,684 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:02,684 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 105 transitions. [2022-02-20 17:20:02,685 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 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:20:02,685 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 105 transitions. [2022-02-20 17:20:02,685 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 17:20:02,685 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:02,686 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:02,709 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:20:02,903 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:02,904 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:02,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:02,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1689492770, now seen corresponding path program 1 times [2022-02-20 17:20:02,904 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:02,904 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [175260783] [2022-02-20 17:20:02,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:02,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:02,920 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:02,920 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [163658254] [2022-02-20 17:20:02,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:02,920 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:02,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:02,922 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:20:02,929 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:20:02,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:02,966 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 17:20:02,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:02,984 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:03,186 INFO L290 TraceCheckUtils]: 0: Hoare triple {1940#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,187 INFO L290 TraceCheckUtils]: 1: Hoare triple {1945#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,187 INFO L272 TraceCheckUtils]: 2: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,188 INFO L290 TraceCheckUtils]: 3: Hoare triple {1945#(<= ~counter~0 0)} ~cond := #in~cond; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,188 INFO L290 TraceCheckUtils]: 4: Hoare triple {1945#(<= ~counter~0 0)} assume !(0 == ~cond); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,188 INFO L290 TraceCheckUtils]: 5: Hoare triple {1945#(<= ~counter~0 0)} assume true; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,189 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1945#(<= ~counter~0 0)} {1945#(<= ~counter~0 0)} #61#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,190 INFO L272 TraceCheckUtils]: 7: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,190 INFO L290 TraceCheckUtils]: 8: Hoare triple {1945#(<= ~counter~0 0)} ~cond := #in~cond; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,190 INFO L290 TraceCheckUtils]: 9: Hoare triple {1945#(<= ~counter~0 0)} assume !(0 == ~cond); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,191 INFO L290 TraceCheckUtils]: 10: Hoare triple {1945#(<= ~counter~0 0)} assume true; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,191 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1945#(<= ~counter~0 0)} {1945#(<= ~counter~0 0)} #63#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,192 INFO L290 TraceCheckUtils]: 12: Hoare triple {1945#(<= ~counter~0 0)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {1945#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,193 INFO L290 TraceCheckUtils]: 14: Hoare triple {1985#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,194 INFO L272 TraceCheckUtils]: 15: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,194 INFO L290 TraceCheckUtils]: 16: Hoare triple {1985#(<= ~counter~0 1)} ~cond := #in~cond; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,195 INFO L290 TraceCheckUtils]: 17: Hoare triple {1985#(<= ~counter~0 1)} assume !(0 == ~cond); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,195 INFO L290 TraceCheckUtils]: 18: Hoare triple {1985#(<= ~counter~0 1)} assume true; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,197 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1985#(<= ~counter~0 1)} {1985#(<= ~counter~0 1)} #65#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,198 INFO L272 TraceCheckUtils]: 20: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,199 INFO L290 TraceCheckUtils]: 21: Hoare triple {1985#(<= ~counter~0 1)} ~cond := #in~cond; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,199 INFO L290 TraceCheckUtils]: 22: Hoare triple {1985#(<= ~counter~0 1)} assume !(0 == ~cond); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,200 INFO L290 TraceCheckUtils]: 23: Hoare triple {1985#(<= ~counter~0 1)} assume true; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,200 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1985#(<= ~counter~0 1)} {1985#(<= ~counter~0 1)} #67#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,201 INFO L272 TraceCheckUtils]: 25: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,202 INFO L290 TraceCheckUtils]: 26: Hoare triple {1985#(<= ~counter~0 1)} ~cond := #in~cond; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,202 INFO L290 TraceCheckUtils]: 27: Hoare triple {1985#(<= ~counter~0 1)} assume !(0 == ~cond); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,203 INFO L290 TraceCheckUtils]: 28: Hoare triple {1985#(<= ~counter~0 1)} assume true; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,203 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1985#(<= ~counter~0 1)} {1985#(<= ~counter~0 1)} #69#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,204 INFO L290 TraceCheckUtils]: 30: Hoare triple {1985#(<= ~counter~0 1)} assume !!(main_~a~0#1 != main_~b~0#1); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,204 INFO L290 TraceCheckUtils]: 31: Hoare triple {1985#(<= ~counter~0 1)} assume main_~a~0#1 > main_~b~0#1;main_~a~0#1 := main_~a~0#1 - main_~b~0#1;main_~p~0#1 := main_~p~0#1 - main_~q~0#1;main_~r~0#1 := main_~r~0#1 - main_~s~0#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,205 INFO L290 TraceCheckUtils]: 32: Hoare triple {1985#(<= ~counter~0 1)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2043#(<= |ULTIMATE.start_main_#t~post6#1| 1)} is VALID [2022-02-20 17:20:03,205 INFO L290 TraceCheckUtils]: 33: Hoare triple {2043#(<= |ULTIMATE.start_main_#t~post6#1| 1)} assume !(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:20:03,206 INFO L272 TraceCheckUtils]: 34: Hoare triple {1941#false} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {1941#false} is VALID [2022-02-20 17:20:03,206 INFO L290 TraceCheckUtils]: 35: Hoare triple {1941#false} ~cond := #in~cond; {1941#false} is VALID [2022-02-20 17:20:03,206 INFO L290 TraceCheckUtils]: 36: Hoare triple {1941#false} assume 0 == ~cond; {1941#false} is VALID [2022-02-20 17:20:03,206 INFO L290 TraceCheckUtils]: 37: Hoare triple {1941#false} assume !false; {1941#false} is VALID [2022-02-20 17:20:03,206 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:20:03,207 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:20:03,373 INFO L290 TraceCheckUtils]: 37: Hoare triple {1941#false} assume !false; {1941#false} is VALID [2022-02-20 17:20:03,374 INFO L290 TraceCheckUtils]: 36: Hoare triple {1941#false} assume 0 == ~cond; {1941#false} is VALID [2022-02-20 17:20:03,374 INFO L290 TraceCheckUtils]: 35: Hoare triple {1941#false} ~cond := #in~cond; {1941#false} is VALID [2022-02-20 17:20:03,374 INFO L272 TraceCheckUtils]: 34: Hoare triple {1941#false} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {1941#false} is VALID [2022-02-20 17:20:03,378 INFO L290 TraceCheckUtils]: 33: Hoare triple {2043#(<= |ULTIMATE.start_main_#t~post6#1| 1)} assume !(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:20:03,379 INFO L290 TraceCheckUtils]: 32: Hoare triple {1985#(<= ~counter~0 1)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2043#(<= |ULTIMATE.start_main_#t~post6#1| 1)} is VALID [2022-02-20 17:20:03,380 INFO L290 TraceCheckUtils]: 31: Hoare triple {1985#(<= ~counter~0 1)} assume main_~a~0#1 > main_~b~0#1;main_~a~0#1 := main_~a~0#1 - main_~b~0#1;main_~p~0#1 := main_~p~0#1 - main_~q~0#1;main_~r~0#1 := main_~r~0#1 - main_~s~0#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {1985#(<= ~counter~0 1)} assume !!(main_~a~0#1 != main_~b~0#1); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,381 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1940#true} {1985#(<= ~counter~0 1)} #69#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:20:03,382 INFO L290 TraceCheckUtils]: 27: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:20:03,382 INFO L290 TraceCheckUtils]: 26: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:20:03,382 INFO L272 TraceCheckUtils]: 25: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:20:03,383 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1940#true} {1985#(<= ~counter~0 1)} #67#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:20:03,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:20:03,384 INFO L290 TraceCheckUtils]: 21: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:20:03,384 INFO L272 TraceCheckUtils]: 20: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:20:03,385 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1940#true} {1985#(<= ~counter~0 1)} #65#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,385 INFO L290 TraceCheckUtils]: 18: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:20:03,386 INFO L290 TraceCheckUtils]: 17: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:20:03,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:20:03,386 INFO L272 TraceCheckUtils]: 15: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:20:03,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {1985#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {1945#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:20:03,387 INFO L290 TraceCheckUtils]: 12: Hoare triple {1945#(<= ~counter~0 0)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,388 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1940#true} {1945#(<= ~counter~0 0)} #63#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,388 INFO L290 TraceCheckUtils]: 10: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:20:03,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:20:03,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:20:03,389 INFO L272 TraceCheckUtils]: 7: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:20:03,389 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1940#true} {1945#(<= ~counter~0 0)} #61#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:20:03,390 INFO L290 TraceCheckUtils]: 4: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:20:03,390 INFO L290 TraceCheckUtils]: 3: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:20:03,390 INFO L272 TraceCheckUtils]: 2: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:20:03,390 INFO L290 TraceCheckUtils]: 1: Hoare triple {1945#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,391 INFO L290 TraceCheckUtils]: 0: Hoare triple {1940#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:20:03,391 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:20:03,392 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:03,392 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [175260783] [2022-02-20 17:20:03,392 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:03,392 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [163658254] [2022-02-20 17:20:03,392 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [163658254] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:20:03,392 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:20:03,392 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 5] total 5 [2022-02-20 17:20:03,393 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [183030079] [2022-02-20 17:20:03,393 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:20:03,393 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 38 [2022-02-20 17:20:03,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:03,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-02-20 17:20:03,433 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:20:03,434 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:20:03,434 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:03,434 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:20:03,434 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:20:03,435 INFO L87 Difference]: Start difference. First operand 74 states and 105 transitions. Second operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-02-20 17:20:03,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:03,656 INFO L93 Difference]: Finished difference Result 117 states and 148 transitions. [2022-02-20 17:20:03,656 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:20:03,656 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 38 [2022-02-20 17:20:03,657 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:03,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-02-20 17:20:03,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-02-20 17:20:03,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-02-20 17:20:03,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-02-20 17:20:03,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 70 transitions. [2022-02-20 17:20:03,715 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:03,717 INFO L225 Difference]: With dead ends: 117 [2022-02-20 17:20:03,717 INFO L226 Difference]: Without dead ends: 98 [2022-02-20 17:20:03,718 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:20:03,719 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 12 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:03,719 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 119 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:20:03,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-02-20 17:20:03,808 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 96. [2022-02-20 17:20:03,809 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:03,809 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:03,810 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:03,810 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:03,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:03,814 INFO L93 Difference]: Finished difference Result 98 states and 124 transitions. [2022-02-20 17:20:03,814 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 124 transitions. [2022-02-20 17:20:03,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:03,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:03,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 98 states. [2022-02-20 17:20:03,816 INFO L87 Difference]: Start difference. First operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) Second operand 98 states. [2022-02-20 17:20:03,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:03,820 INFO L93 Difference]: Finished difference Result 98 states and 124 transitions. [2022-02-20 17:20:03,820 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 124 transitions. [2022-02-20 17:20:03,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:03,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:03,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:03,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:03,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 56 states have (on average 1.2142857142857142) internal successors, (68), 62 states have internal predecessors, (68), 29 states have call successors, (29), 11 states have call predecessors, (29), 10 states have return successors, (26), 22 states have call predecessors, (26), 26 states have call successors, (26) [2022-02-20 17:20:03,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 123 transitions. [2022-02-20 17:20:03,826 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 123 transitions. Word has length 38 [2022-02-20 17:20:03,826 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:03,827 INFO L470 AbstractCegarLoop]: Abstraction has 96 states and 123 transitions. [2022-02-20 17:20:03,827 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-02-20 17:20:03,827 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-02-20 17:20:03,828 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 17:20:03,828 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:03,828 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:03,854 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:20:04,051 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:04,052 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:04,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:04,052 INFO L85 PathProgramCache]: Analyzing trace with hash 1691161066, now seen corresponding path program 1 times [2022-02-20 17:20:04,052 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:04,053 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1500814388] [2022-02-20 17:20:04,053 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:04,053 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:04,065 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:04,066 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1440269586] [2022-02-20 17:20:04,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:04,066 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:04,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:04,067 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:20:04,078 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:20:04,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:04,112 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:20:04,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:04,124 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:04,304 INFO L290 TraceCheckUtils]: 0: Hoare triple {2681#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2681#true} is VALID [2022-02-20 17:20:04,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {2681#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2681#true} is VALID [2022-02-20 17:20:04,305 INFO L272 TraceCheckUtils]: 2: Hoare triple {2681#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {2681#true} is VALID [2022-02-20 17:20:04,305 INFO L290 TraceCheckUtils]: 3: Hoare triple {2681#true} ~cond := #in~cond; {2681#true} is VALID [2022-02-20 17:20:04,305 INFO L290 TraceCheckUtils]: 4: Hoare triple {2681#true} assume !(0 == ~cond); {2681#true} is VALID [2022-02-20 17:20:04,305 INFO L290 TraceCheckUtils]: 5: Hoare triple {2681#true} assume true; {2681#true} is VALID [2022-02-20 17:20:04,306 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2681#true} {2681#true} #61#return; {2681#true} is VALID [2022-02-20 17:20:04,306 INFO L272 TraceCheckUtils]: 7: Hoare triple {2681#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2681#true} is VALID [2022-02-20 17:20:04,306 INFO L290 TraceCheckUtils]: 8: Hoare triple {2681#true} ~cond := #in~cond; {2681#true} is VALID [2022-02-20 17:20:04,306 INFO L290 TraceCheckUtils]: 9: Hoare triple {2681#true} assume !(0 == ~cond); {2681#true} is VALID [2022-02-20 17:20:04,306 INFO L290 TraceCheckUtils]: 10: Hoare triple {2681#true} assume true; {2681#true} is VALID [2022-02-20 17:20:04,307 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {2681#true} {2681#true} #63#return; {2681#true} is VALID [2022-02-20 17:20:04,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {2681#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,308 INFO L290 TraceCheckUtils]: 13: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,308 INFO L290 TraceCheckUtils]: 14: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,308 INFO L272 TraceCheckUtils]: 15: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {2681#true} is VALID [2022-02-20 17:20:04,309 INFO L290 TraceCheckUtils]: 16: Hoare triple {2681#true} ~cond := #in~cond; {2681#true} is VALID [2022-02-20 17:20:04,309 INFO L290 TraceCheckUtils]: 17: Hoare triple {2681#true} assume !(0 == ~cond); {2681#true} is VALID [2022-02-20 17:20:04,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {2681#true} assume true; {2681#true} is VALID [2022-02-20 17:20:04,310 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2681#true} {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #65#return; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,310 INFO L272 TraceCheckUtils]: 20: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {2681#true} is VALID [2022-02-20 17:20:04,310 INFO L290 TraceCheckUtils]: 21: Hoare triple {2681#true} ~cond := #in~cond; {2681#true} is VALID [2022-02-20 17:20:04,310 INFO L290 TraceCheckUtils]: 22: Hoare triple {2681#true} assume !(0 == ~cond); {2681#true} is VALID [2022-02-20 17:20:04,310 INFO L290 TraceCheckUtils]: 23: Hoare triple {2681#true} assume true; {2681#true} is VALID [2022-02-20 17:20:04,311 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2681#true} {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #67#return; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,311 INFO L272 TraceCheckUtils]: 25: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {2681#true} is VALID [2022-02-20 17:20:04,312 INFO L290 TraceCheckUtils]: 26: Hoare triple {2681#true} ~cond := #in~cond; {2681#true} is VALID [2022-02-20 17:20:04,312 INFO L290 TraceCheckUtils]: 27: Hoare triple {2681#true} assume !(0 == ~cond); {2681#true} is VALID [2022-02-20 17:20:04,312 INFO L290 TraceCheckUtils]: 28: Hoare triple {2681#true} assume true; {2681#true} is VALID [2022-02-20 17:20:04,313 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2681#true} {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #69#return; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,313 INFO L290 TraceCheckUtils]: 30: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_~a~0#1 != main_~b~0#1); {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,314 INFO L290 TraceCheckUtils]: 31: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume main_~a~0#1 > main_~b~0#1;main_~a~0#1 := main_~a~0#1 - main_~b~0#1;main_~p~0#1 := main_~p~0#1 - main_~q~0#1;main_~r~0#1 := main_~r~0#1 - main_~s~0#1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,314 INFO L290 TraceCheckUtils]: 32: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,315 INFO L290 TraceCheckUtils]: 33: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:04,316 INFO L272 TraceCheckUtils]: 34: Hoare triple {2722#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {2789#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:04,316 INFO L290 TraceCheckUtils]: 35: Hoare triple {2789#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2793#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:04,316 INFO L290 TraceCheckUtils]: 36: Hoare triple {2793#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2682#false} is VALID [2022-02-20 17:20:04,317 INFO L290 TraceCheckUtils]: 37: Hoare triple {2682#false} assume !false; {2682#false} is VALID [2022-02-20 17:20:04,317 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-02-20 17:20:04,317 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:04,317 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:04,317 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1500814388] [2022-02-20 17:20:04,317 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:04,318 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1440269586] [2022-02-20 17:20:04,318 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1440269586] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:04,318 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:04,318 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:20:04,318 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [121832702] [2022-02-20 17:20:04,318 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:04,319 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), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 38 [2022-02-20 17:20:04,319 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:04,319 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), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 17:20:04,340 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:20:04,341 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:20:04,341 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:04,341 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:20:04,341 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:20:04,342 INFO L87 Difference]: Start difference. First operand 96 states and 123 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), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 17:20:04,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:04,569 INFO L93 Difference]: Finished difference Result 102 states and 128 transitions. [2022-02-20 17:20:04,569 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:20:04,569 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), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 38 [2022-02-20 17:20:04,569 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:04,570 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), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 17:20:04,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-02-20 17:20:04,571 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), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 17:20:04,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-02-20 17:20:04,572 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 58 transitions. [2022-02-20 17:20:04,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:04,626 INFO L225 Difference]: With dead ends: 102 [2022-02-20 17:20:04,627 INFO L226 Difference]: Without dead ends: 99 [2022-02-20 17:20:04,627 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 33 SyntacticMatches, 1 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:20:04,628 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 7 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 127 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:04,628 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 127 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:20:04,630 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-02-20 17:20:04,718 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 99. [2022-02-20 17:20:04,718 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:04,718 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) [2022-02-20 17:20:04,719 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) [2022-02-20 17:20:04,719 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) [2022-02-20 17:20:04,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:04,723 INFO L93 Difference]: Finished difference Result 99 states and 124 transitions. [2022-02-20 17:20:04,723 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 124 transitions. [2022-02-20 17:20:04,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:04,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:04,724 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) Second operand 99 states. [2022-02-20 17:20:04,724 INFO L87 Difference]: Start difference. First operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) Second operand 99 states. [2022-02-20 17:20:04,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:04,728 INFO L93 Difference]: Finished difference Result 99 states and 124 transitions. [2022-02-20 17:20:04,728 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 124 transitions. [2022-02-20 17:20:04,729 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:04,729 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:04,729 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:04,729 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:04,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 59 states have (on average 1.2033898305084745) internal successors, (71), 65 states have internal predecessors, (71), 28 states have call successors, (28), 12 states have call predecessors, (28), 11 states have return successors, (25), 21 states have call predecessors, (25), 25 states have call successors, (25) [2022-02-20 17:20:04,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 124 transitions. [2022-02-20 17:20:04,733 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 124 transitions. Word has length 38 [2022-02-20 17:20:04,733 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:04,734 INFO L470 AbstractCegarLoop]: Abstraction has 99 states and 124 transitions. [2022-02-20 17:20:04,734 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), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 17:20:04,734 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 124 transitions. [2022-02-20 17:20:04,735 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 17:20:04,735 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:04,735 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:04,762 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:20:04,951 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:04,952 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:04,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:04,952 INFO L85 PathProgramCache]: Analyzing trace with hash 1925895455, now seen corresponding path program 1 times [2022-02-20 17:20:04,952 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:04,952 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [611161808] [2022-02-20 17:20:04,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:04,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:04,965 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:04,967 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1392069628] [2022-02-20 17:20:04,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:04,967 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:04,968 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:04,978 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:20:04,979 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-20 17:20:05,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:05,015 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 17:20:05,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:05,037 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:05,220 INFO L290 TraceCheckUtils]: 0: Hoare triple {3293#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {3293#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L272 TraceCheckUtils]: 2: Hoare triple {3293#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L290 TraceCheckUtils]: 3: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L290 TraceCheckUtils]: 4: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L290 TraceCheckUtils]: 5: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:05,221 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3293#true} {3293#true} #61#return; {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L272 TraceCheckUtils]: 7: Hoare triple {3293#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L290 TraceCheckUtils]: 8: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L290 TraceCheckUtils]: 9: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L290 TraceCheckUtils]: 10: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3293#true} {3293#true} #63#return; {3293#true} is VALID [2022-02-20 17:20:05,222 INFO L290 TraceCheckUtils]: 12: Hoare triple {3293#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L290 TraceCheckUtils]: 13: Hoare triple {3293#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L290 TraceCheckUtils]: 14: Hoare triple {3293#true} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L272 TraceCheckUtils]: 15: Hoare triple {3293#true} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L290 TraceCheckUtils]: 16: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L290 TraceCheckUtils]: 17: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:05,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:05,224 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3293#true} {3293#true} #65#return; {3293#true} is VALID [2022-02-20 17:20:05,224 INFO L272 TraceCheckUtils]: 20: Hoare triple {3293#true} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,224 INFO L290 TraceCheckUtils]: 21: Hoare triple {3293#true} ~cond := #in~cond; {3361#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:05,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {3361#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:20:05,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:20:05,226 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} {3293#true} #67#return; {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:05,226 INFO L272 TraceCheckUtils]: 25: Hoare triple {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:05,226 INFO L290 TraceCheckUtils]: 27: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:05,227 INFO L290 TraceCheckUtils]: 28: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:05,228 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3293#true} {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} #69#return; {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:05,228 INFO L290 TraceCheckUtils]: 30: Hoare triple {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} assume !(main_~a~0#1 != main_~b~0#1); {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:20:05,228 INFO L272 TraceCheckUtils]: 31: Hoare triple {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:05,228 INFO L290 TraceCheckUtils]: 32: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:05,229 INFO L290 TraceCheckUtils]: 33: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:05,229 INFO L290 TraceCheckUtils]: 34: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:05,230 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3293#true} {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #71#return; {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:20:05,233 INFO L272 TraceCheckUtils]: 36: Hoare triple {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if 0 == main_~p~0#1 * main_~x~0#1 + main_~r~0#1 * main_~y~0#1 - main_~b~0#1 then 1 else 0)); {3410#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:05,233 INFO L290 TraceCheckUtils]: 37: Hoare triple {3410#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3414#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:05,234 INFO L290 TraceCheckUtils]: 38: Hoare triple {3414#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3294#false} is VALID [2022-02-20 17:20:05,234 INFO L290 TraceCheckUtils]: 39: Hoare triple {3294#false} assume !false; {3294#false} is VALID [2022-02-20 17:20:05,234 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-02-20 17:20:05,234 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:20:16,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {3294#false} assume !false; {3294#false} is VALID [2022-02-20 17:20:16,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {3414#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3294#false} is VALID [2022-02-20 17:20:16,013 INFO L290 TraceCheckUtils]: 37: Hoare triple {3410#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3414#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:16,013 INFO L272 TraceCheckUtils]: 36: Hoare triple {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if 0 == main_~p~0#1 * main_~x~0#1 + main_~r~0#1 * main_~y~0#1 - main_~b~0#1 then 1 else 0)); {3410#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:16,015 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3293#true} {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #71#return; {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:20:16,015 INFO L290 TraceCheckUtils]: 34: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:16,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:16,016 INFO L290 TraceCheckUtils]: 32: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:16,016 INFO L272 TraceCheckUtils]: 31: Hoare triple {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if 0 == main_~a~0#1 - main_~b~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} assume !(main_~a~0#1 != main_~b~0#1); {3391#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:20:16,018 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3293#true} {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} #69#return; {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:16,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:16,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:16,019 INFO L290 TraceCheckUtils]: 26: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:16,019 INFO L272 TraceCheckUtils]: 25: Hoare triple {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,020 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} {3293#true} #67#return; {3372#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:16,021 INFO L290 TraceCheckUtils]: 23: Hoare triple {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:20:16,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {3475#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:20:16,023 INFO L290 TraceCheckUtils]: 21: Hoare triple {3293#true} ~cond := #in~cond; {3475#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:20:16,023 INFO L272 TraceCheckUtils]: 20: Hoare triple {3293#true} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,023 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3293#true} {3293#true} #65#return; {3293#true} is VALID [2022-02-20 17:20:16,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:16,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:16,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:16,024 INFO L272 TraceCheckUtils]: 15: Hoare triple {3293#true} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {3293#true} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {3293#true} is VALID [2022-02-20 17:20:16,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {3293#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3293#true} is VALID [2022-02-20 17:20:16,026 INFO L290 TraceCheckUtils]: 12: Hoare triple {3293#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {3293#true} is VALID [2022-02-20 17:20:16,026 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3293#true} {3293#true} #63#return; {3293#true} is VALID [2022-02-20 17:20:16,026 INFO L290 TraceCheckUtils]: 10: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:16,026 INFO L290 TraceCheckUtils]: 9: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:16,026 INFO L290 TraceCheckUtils]: 8: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:16,027 INFO L272 TraceCheckUtils]: 7: Hoare triple {3293#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,027 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3293#true} {3293#true} #61#return; {3293#true} is VALID [2022-02-20 17:20:16,027 INFO L290 TraceCheckUtils]: 5: Hoare triple {3293#true} assume true; {3293#true} is VALID [2022-02-20 17:20:16,027 INFO L290 TraceCheckUtils]: 4: Hoare triple {3293#true} assume !(0 == ~cond); {3293#true} is VALID [2022-02-20 17:20:16,027 INFO L290 TraceCheckUtils]: 3: Hoare triple {3293#true} ~cond := #in~cond; {3293#true} is VALID [2022-02-20 17:20:16,028 INFO L272 TraceCheckUtils]: 2: Hoare triple {3293#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {3293#true} is VALID [2022-02-20 17:20:16,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {3293#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3293#true} is VALID [2022-02-20 17:20:16,028 INFO L290 TraceCheckUtils]: 0: Hoare triple {3293#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3293#true} is VALID [2022-02-20 17:20:16,028 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-02-20 17:20:16,028 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:16,029 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [611161808] [2022-02-20 17:20:16,029 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:16,029 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1392069628] [2022-02-20 17:20:16,029 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1392069628] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:20:16,029 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:20:16,029 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-02-20 17:20:16,029 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [403123458] [2022-02-20 17:20:16,030 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:20:16,031 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-02-20 17:20:16,031 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:16,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 17:20:16,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:16,062 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:20:16,063 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:16,063 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:20:16,063 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:20:16,063 INFO L87 Difference]: Start difference. First operand 99 states and 124 transitions. Second operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 17:20:16,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:16,725 INFO L93 Difference]: Finished difference Result 114 states and 144 transitions. [2022-02-20 17:20:16,725 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:20:16,725 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-02-20 17:20:16,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:16,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 17:20:16,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-02-20 17:20:16,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 17:20:16,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-02-20 17:20:16,729 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-02-20 17:20:16,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:16,802 INFO L225 Difference]: With dead ends: 114 [2022-02-20 17:20:16,802 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 17:20:16,803 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-02-20 17:20:16,803 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 20 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 94 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 110 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 94 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:16,804 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 109 Invalid, 110 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 17:20:16,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 17:20:16,889 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 100. [2022-02-20 17:20:16,889 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:16,889 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) [2022-02-20 17:20:16,890 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) [2022-02-20 17:20:16,890 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) [2022-02-20 17:20:16,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:16,894 INFO L93 Difference]: Finished difference Result 102 states and 129 transitions. [2022-02-20 17:20:16,894 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 129 transitions. [2022-02-20 17:20:16,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:16,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:16,895 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-02-20 17:20:16,896 INFO L87 Difference]: Start difference. First operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) Second operand 102 states. [2022-02-20 17:20:16,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:16,899 INFO L93 Difference]: Finished difference Result 102 states and 129 transitions. [2022-02-20 17:20:16,899 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 129 transitions. [2022-02-20 17:20:16,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:16,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:16,900 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:16,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:16,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 59 states have (on average 1.1864406779661016) internal successors, (70), 66 states have internal predecessors, (70), 29 states have call successors, (29), 11 states have call predecessors, (29), 11 states have return successors, (27), 22 states have call predecessors, (27), 27 states have call successors, (27) [2022-02-20 17:20:16,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 126 transitions. [2022-02-20 17:20:16,904 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 126 transitions. Word has length 40 [2022-02-20 17:20:16,904 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:16,904 INFO L470 AbstractCegarLoop]: Abstraction has 100 states and 126 transitions. [2022-02-20 17:20:16,905 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 17:20:16,905 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 126 transitions. [2022-02-20 17:20:16,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 17:20:16,905 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:16,906 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:16,932 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:17,130 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:17,130 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:17,131 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:17,131 INFO L85 PathProgramCache]: Analyzing trace with hash 968731240, now seen corresponding path program 2 times [2022-02-20 17:20:17,131 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:17,131 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [898985658] [2022-02-20 17:20:17,131 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:17,131 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:17,148 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:17,150 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [553607826] [2022-02-20 17:20:17,150 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 17:20:17,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:17,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:17,152 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:20:17,157 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-02-20 17:20:17,203 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 17:20:17,204 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 17:20:17,205 INFO L263 TraceCheckSpWp]: Trace formula consists of 124 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 17:20:17,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:17,217 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:17,542 INFO L290 TraceCheckUtils]: 0: Hoare triple {4064#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4064#true} is VALID [2022-02-20 17:20:17,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {4064#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {4064#true} is VALID [2022-02-20 17:20:17,543 INFO L272 TraceCheckUtils]: 2: Hoare triple {4064#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,543 INFO L290 TraceCheckUtils]: 3: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,543 INFO L290 TraceCheckUtils]: 4: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,543 INFO L290 TraceCheckUtils]: 5: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,544 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4064#true} {4064#true} #61#return; {4064#true} is VALID [2022-02-20 17:20:17,544 INFO L272 TraceCheckUtils]: 7: Hoare triple {4064#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,544 INFO L290 TraceCheckUtils]: 8: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,544 INFO L290 TraceCheckUtils]: 9: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,545 INFO L290 TraceCheckUtils]: 10: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,545 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {4064#true} {4064#true} #63#return; {4064#true} is VALID [2022-02-20 17:20:17,545 INFO L290 TraceCheckUtils]: 12: Hoare triple {4064#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,547 INFO L272 TraceCheckUtils]: 15: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,552 INFO L290 TraceCheckUtils]: 17: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,553 INFO L290 TraceCheckUtils]: 18: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,554 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4064#true} {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #65#return; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,555 INFO L272 TraceCheckUtils]: 20: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,558 INFO L290 TraceCheckUtils]: 23: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,560 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {4064#true} {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #67#return; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,560 INFO L272 TraceCheckUtils]: 25: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,560 INFO L290 TraceCheckUtils]: 26: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,560 INFO L290 TraceCheckUtils]: 27: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,564 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4064#true} {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #69#return; {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,565 INFO L290 TraceCheckUtils]: 30: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(main_~a~0#1 != main_~b~0#1); {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:20:17,566 INFO L290 TraceCheckUtils]: 31: Hoare triple {4105#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume main_~a~0#1 > main_~b~0#1;main_~a~0#1 := main_~a~0#1 - main_~b~0#1;main_~p~0#1 := main_~p~0#1 - main_~q~0#1;main_~r~0#1 := main_~r~0#1 - main_~s~0#1; {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} is VALID [2022-02-20 17:20:17,566 INFO L290 TraceCheckUtils]: 32: Hoare triple {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} is VALID [2022-02-20 17:20:17,567 INFO L290 TraceCheckUtils]: 33: Hoare triple {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} is VALID [2022-02-20 17:20:17,567 INFO L272 TraceCheckUtils]: 34: Hoare triple {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,567 INFO L290 TraceCheckUtils]: 35: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,567 INFO L290 TraceCheckUtils]: 36: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,567 INFO L290 TraceCheckUtils]: 37: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,568 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4064#true} {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} #65#return; {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} is VALID [2022-02-20 17:20:17,569 INFO L272 TraceCheckUtils]: 39: Hoare triple {4163#(and (= (+ (* (- 1) |ULTIMATE.start_main_~p~0#1|) 1) 0) (= (* (- 1) |ULTIMATE.start_main_~r~0#1|) 1) (= |ULTIMATE.start_main_~a~0#1| (+ (* (- 1) |ULTIMATE.start_main_~y~0#1|) |ULTIMATE.start_main_~x~0#1|)))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {4188#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:17,569 INFO L290 TraceCheckUtils]: 40: Hoare triple {4188#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4192#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:17,570 INFO L290 TraceCheckUtils]: 41: Hoare triple {4192#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4065#false} is VALID [2022-02-20 17:20:17,570 INFO L290 TraceCheckUtils]: 42: Hoare triple {4065#false} assume !false; {4065#false} is VALID [2022-02-20 17:20:17,570 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 17:20:17,571 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:20:17,766 INFO L290 TraceCheckUtils]: 42: Hoare triple {4065#false} assume !false; {4065#false} is VALID [2022-02-20 17:20:17,767 INFO L290 TraceCheckUtils]: 41: Hoare triple {4192#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4065#false} is VALID [2022-02-20 17:20:17,767 INFO L290 TraceCheckUtils]: 40: Hoare triple {4188#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4192#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:20:17,768 INFO L272 TraceCheckUtils]: 39: Hoare triple {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {4188#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:17,769 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4064#true} {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} #65#return; {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:17,769 INFO L290 TraceCheckUtils]: 37: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,769 INFO L290 TraceCheckUtils]: 36: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,769 INFO L290 TraceCheckUtils]: 35: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,769 INFO L272 TraceCheckUtils]: 34: Hoare triple {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,773 INFO L290 TraceCheckUtils]: 33: Hoare triple {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:17,773 INFO L290 TraceCheckUtils]: 32: Hoare triple {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:17,881 INFO L290 TraceCheckUtils]: 31: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} assume main_~a~0#1 > main_~b~0#1;main_~a~0#1 := main_~a~0#1 - main_~b~0#1;main_~p~0#1 := main_~p~0#1 - main_~q~0#1;main_~r~0#1 := main_~r~0#1 - main_~s~0#1; {4208#(= (+ (* |ULTIMATE.start_main_~r~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~p~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:20:17,882 INFO L290 TraceCheckUtils]: 30: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} assume !!(main_~a~0#1 != main_~b~0#1); {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,883 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4064#true} {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} #69#return; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,883 INFO L290 TraceCheckUtils]: 28: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,883 INFO L290 TraceCheckUtils]: 27: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,883 INFO L290 TraceCheckUtils]: 26: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,883 INFO L272 TraceCheckUtils]: 25: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,884 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {4064#true} {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} #67#return; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,884 INFO L290 TraceCheckUtils]: 22: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,884 INFO L290 TraceCheckUtils]: 21: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,884 INFO L272 TraceCheckUtils]: 20: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,885 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4064#true} {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} #65#return; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,885 INFO L290 TraceCheckUtils]: 17: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,885 INFO L290 TraceCheckUtils]: 16: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,885 INFO L272 TraceCheckUtils]: 15: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} call __VERIFIER_assert((if 1 == main_~p~0#1 * main_~s~0#1 - main_~r~0#1 * main_~q~0#1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,886 INFO L290 TraceCheckUtils]: 14: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} assume !!(main_#t~post6#1 < 2);havoc main_#t~post6#1; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,886 INFO L290 TraceCheckUtils]: 13: Hoare triple {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,887 INFO L290 TraceCheckUtils]: 12: Hoare triple {4064#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1; {4233#(= (+ (* (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) |ULTIMATE.start_main_~p~0#1|) |ULTIMATE.start_main_~x~0#1|) (* |ULTIMATE.start_main_~y~0#1| (+ |ULTIMATE.start_main_~r~0#1| (* (- 1) |ULTIMATE.start_main_~s~0#1|)))) (+ (* (- 1) |ULTIMATE.start_main_~b~0#1|) |ULTIMATE.start_main_~a~0#1|))} is VALID [2022-02-20 17:20:17,887 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {4064#true} {4064#true} #63#return; {4064#true} is VALID [2022-02-20 17:20:17,887 INFO L290 TraceCheckUtils]: 10: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L290 TraceCheckUtils]: 9: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L290 TraceCheckUtils]: 8: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L272 TraceCheckUtils]: 7: Hoare triple {4064#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4064#true} {4064#true} #61#return; {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L290 TraceCheckUtils]: 5: Hoare triple {4064#true} assume true; {4064#true} is VALID [2022-02-20 17:20:17,888 INFO L290 TraceCheckUtils]: 4: Hoare triple {4064#true} assume !(0 == ~cond); {4064#true} is VALID [2022-02-20 17:20:17,889 INFO L290 TraceCheckUtils]: 3: Hoare triple {4064#true} ~cond := #in~cond; {4064#true} is VALID [2022-02-20 17:20:17,889 INFO L272 TraceCheckUtils]: 2: Hoare triple {4064#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {4064#true} is VALID [2022-02-20 17:20:17,889 INFO L290 TraceCheckUtils]: 1: Hoare triple {4064#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~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;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {4064#true} is VALID [2022-02-20 17:20:17,889 INFO L290 TraceCheckUtils]: 0: Hoare triple {4064#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(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4064#true} is VALID [2022-02-20 17:20:17,889 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 17:20:17,890 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:20:17,890 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [898985658] [2022-02-20 17:20:17,890 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:20:17,890 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [553607826] [2022-02-20 17:20:17,890 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [553607826] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:20:17,890 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:20:17,890 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-02-20 17:20:17,891 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1501699925] [2022-02-20 17:20:17,891 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:20:17,891 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 43 [2022-02-20 17:20:17,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:17,892 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:20:17,991 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:17,991 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 17:20:17,991 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:20:17,992 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 17:20:17,992 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 17:20:17,992 INFO L87 Difference]: Start difference. First operand 100 states and 126 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:20:22,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:22,922 INFO L93 Difference]: Finished difference Result 127 states and 165 transitions. [2022-02-20 17:20:22,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 17:20:22,923 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 43 [2022-02-20 17:20:22,923 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:22,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:20:22,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 71 transitions. [2022-02-20 17:20:22,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:20:22,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 71 transitions. [2022-02-20 17:20:22,926 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 71 transitions. [2022-02-20 17:20:23,250 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:23,252 INFO L225 Difference]: With dead ends: 127 [2022-02-20 17:20:23,252 INFO L226 Difference]: Without dead ends: 120 [2022-02-20 17:20:23,253 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 77 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:20:23,253 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 17 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:23,254 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 158 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 17:20:23,254 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2022-02-20 17:20:23,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 104. [2022-02-20 17:20:23,339 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:23,339 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:20:23,339 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:20:23,340 INFO L87 Difference]: Start difference. First operand 120 states. Second operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:20:23,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:23,344 INFO L93 Difference]: Finished difference Result 120 states and 151 transitions. [2022-02-20 17:20:23,344 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 151 transitions. [2022-02-20 17:20:23,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:23,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:23,345 INFO L74 IsIncluded]: Start isIncluded. First operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) Second operand 120 states. [2022-02-20 17:20:23,345 INFO L87 Difference]: Start difference. First operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) Second operand 120 states. [2022-02-20 17:20:23,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:23,349 INFO L93 Difference]: Finished difference Result 120 states and 151 transitions. [2022-02-20 17:20:23,349 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 151 transitions. [2022-02-20 17:20:23,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:23,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:23,350 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:23,350 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:23,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 104 states, 65 states have (on average 1.1538461538461537) internal successors, (75), 71 states have internal predecessors, (75), 25 states have call successors, (25), 13 states have call predecessors, (25), 13 states have return successors, (22), 19 states have call predecessors, (22), 22 states have call successors, (22) [2022-02-20 17:20:23,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 122 transitions. [2022-02-20 17:20:23,353 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 122 transitions. Word has length 43 [2022-02-20 17:20:23,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:23,354 INFO L470 AbstractCegarLoop]: Abstraction has 104 states and 122 transitions. [2022-02-20 17:20:23,354 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:20:23,354 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 122 transitions. [2022-02-20 17:20:23,355 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-02-20 17:20:23,355 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:23,355 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:23,377 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-02-20 17:20:23,571 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-02-20 17:20:23,572 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:23,572 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:23,572 INFO L85 PathProgramCache]: Analyzing trace with hash 1803285070, now seen corresponding path program 2 times [2022-02-20 17:20:23,572 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:20:23,572 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [293856227] [2022-02-20 17:20:23,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:23,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:20:23,583 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:20:23,584 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1476682092] [2022-02-20 17:20:23,584 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 17:20:23,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:23,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:23,585 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:20:23,611 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-20 17:20:23,644 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 17:20:23,645 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-02-20 17:20:23,645 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 17:20:23,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 17:20:23,682 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 17:20:23,682 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 17:20:23,683 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:20:23,723 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:23,903 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:20:23,906 INFO L732 BasicCegarLoop]: Path program histogram: [2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:23,908 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:20:23,926 FATAL L489 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); [2022-02-20 17:20:23,926 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getProgramExecutionAsString(CounterExampleResult.java:155) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getLongDescription(CounterExampleResult.java:134) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportLocationResults(TraceAbstractionStarter.java:607) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:182) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 17:20:23,930 INFO L158 Benchmark]: Toolchain (without parser) took 27115.76ms. Allocated memory was 98.6MB in the beginning and 161.5MB in the end (delta: 62.9MB). Free memory was 69.8MB in the beginning and 85.2MB in the end (delta: -15.3MB). Peak memory consumption was 47.2MB. Max. memory is 16.1GB. [2022-02-20 17:20:23,930 INFO L158 Benchmark]: CDTParser took 0.23ms. Allocated memory is still 98.6MB. Free memory was 53.7MB in the beginning and 53.7MB in the end (delta: 54.4kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:20:23,930 INFO L158 Benchmark]: CACSL2BoogieTranslator took 277.26ms. Allocated memory is still 98.6MB. Free memory was 69.6MB in the beginning and 73.4MB in the end (delta: -3.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 17:20:23,930 INFO L158 Benchmark]: Boogie Procedure Inliner took 43.24ms. Allocated memory is still 98.6MB. Free memory was 73.4MB in the beginning and 71.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:20:23,931 INFO L158 Benchmark]: Boogie Preprocessor took 36.90ms. Allocated memory is still 98.6MB. Free memory was 71.6MB in the beginning and 70.6MB in the end (delta: 989.4kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:20:23,931 INFO L158 Benchmark]: RCFGBuilder took 358.26ms. Allocated memory is still 98.6MB. Free memory was 70.6MB in the beginning and 59.4MB in the end (delta: 11.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:20:23,931 INFO L158 Benchmark]: TraceAbstraction took 26393.03ms. Allocated memory was 98.6MB in the beginning and 161.5MB in the end (delta: 62.9MB). Free memory was 58.7MB in the beginning and 85.2MB in the end (delta: -26.4MB). Peak memory consumption was 37.5MB. Max. memory is 16.1GB. [2022-02-20 17:20:23,932 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.23ms. Allocated memory is still 98.6MB. Free memory was 53.7MB in the beginning and 53.7MB in the end (delta: 54.4kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 277.26ms. Allocated memory is still 98.6MB. Free memory was 69.6MB in the beginning and 73.4MB in the end (delta: -3.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 43.24ms. Allocated memory is still 98.6MB. Free memory was 73.4MB in the beginning and 71.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 36.90ms. Allocated memory is still 98.6MB. Free memory was 71.6MB in the beginning and 70.6MB in the end (delta: 989.4kB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 358.26ms. Allocated memory is still 98.6MB. Free memory was 70.6MB in the beginning and 59.4MB in the end (delta: 11.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 26393.03ms. Allocated memory was 98.6MB in the beginning and 161.5MB in the end (delta: 62.9MB). Free memory was 58.7MB in the beginning and 85.2MB in the end (delta: -26.4MB). Peak memory consumption was 37.5MB. 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 - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 17:20:23,954 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 Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### 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/egcd-ll_unwindbound2.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.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 dad54faad409a509f8fe160c736fa981b1b72909c611eb2d7f09e49e6ca0dfcb --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:20:25,916 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:20:25,918 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:20:25,975 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:20:25,976 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:20:25,979 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:20:25,980 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:20:25,986 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:20:25,988 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:20:25,993 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:20:25,994 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:20:25,995 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:20:25,996 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:20:25,998 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:20:25,999 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:20:26,005 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:20:26,006 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:20:26,006 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:20:26,009 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:20:26,014 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:20:26,016 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:20:26,017 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:20:26,019 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:20:26,020 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:20:26,029 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:20:26,030 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:20:26,030 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:20:26,032 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:20:26,032 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:20:26,033 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:20:26,033 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:20:26,034 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:20:26,035 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:20:26,036 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:20:26,037 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:20:26,037 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:20:26,038 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:20:26,038 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:20:26,038 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:20:26,040 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:20:26,040 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:20:26,044 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2022-02-20 17:20:26,081 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:20:26,082 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:20:26,083 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:20:26,083 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:20:26,084 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:20:26,084 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:20:26,085 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:20:26,086 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:20:26,086 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:20:26,086 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:20:26,087 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:20:26,087 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:20:26,087 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:20:26,088 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:20:26,088 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:20:26,088 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:20:26,088 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 17:20:26,088 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 17:20:26,089 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 17:20:26,089 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:20:26,089 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:20:26,089 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:20:26,089 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:20:26,090 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:20:26,090 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:20:26,090 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:20:26,090 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:20:26,090 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:20:26,091 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:20:26,091 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:20:26,091 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 17:20:26,091 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 17:20:26,092 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:20:26,092 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:20:26,092 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:20:26,092 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 17:20:26,093 INFO L138 SettingsManager]: * Logic for external solver=AUFBV 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 -> dad54faad409a509f8fe160c736fa981b1b72909c611eb2d7f09e49e6ca0dfcb [2022-02-20 17:20:26,369 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:20:26,400 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:20:26,402 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:20:26,403 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:20:26,404 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:20:26,406 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/egcd-ll_unwindbound2.c [2022-02-20 17:20:26,466 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48c5906ee/fbaf349b906a42bcb5eee3652278a5db/FLAG1de93bd0d [2022-02-20 17:20:26,863 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:20:26,863 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/egcd-ll_unwindbound2.c [2022-02-20 17:20:26,869 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48c5906ee/fbaf349b906a42bcb5eee3652278a5db/FLAG1de93bd0d [2022-02-20 17:20:27,276 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48c5906ee/fbaf349b906a42bcb5eee3652278a5db [2022-02-20 17:20:27,279 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:20:27,280 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:20:27,282 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:20:27,282 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:20:27,285 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:20:27,287 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,288 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@389f5f00 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27, skipping insertion in model container [2022-02-20 17:20:27,289 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,296 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:20:27,311 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:20:27,466 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/egcd-ll_unwindbound2.c[489,502] [2022-02-20 17:20:27,506 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:20:27,521 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:20:27,533 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/egcd-ll_unwindbound2.c[489,502] [2022-02-20 17:20:27,555 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:20:27,571 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:20:27,572 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27 WrapperNode [2022-02-20 17:20:27,572 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:20:27,573 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:20:27,573 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:20:27,573 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:20:27,579 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:20:27" (1/1) ... [2022-02-20 17:20:27,588 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:20:27" (1/1) ... [2022-02-20 17:20:27,619 INFO L137 Inliner]: procedures = 14, calls = 16, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 57 [2022-02-20 17:20:27,621 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:20:27,622 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:20:27,622 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:20:27,622 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:20:27,629 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,630 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,640 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,641 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,650 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,662 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,663 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,665 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:20:27,670 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:20:27,670 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:20:27,671 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:20:27,671 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (1/1) ... [2022-02-20 17:20:27,678 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:20:27,687 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:20:27,705 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:20:27,723 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:20:27,756 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:20:27,756 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 17:20:27,756 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:20:27,756 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:20:27,757 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:20:27,757 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:20:27,757 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:20:27,757 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:20:27,824 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:20:27,825 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:20:27,966 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:20:27,972 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:20:27,972 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 17:20:27,974 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:20:27 BoogieIcfgContainer [2022-02-20 17:20:27,974 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:20:27,976 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:20:27,976 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:20:27,978 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:20:27,979 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:20:27" (1/3) ... [2022-02-20 17:20:27,980 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@55d4886a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:20:27, skipping insertion in model container [2022-02-20 17:20:27,980 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:20:27" (2/3) ... [2022-02-20 17:20:27,980 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@55d4886a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:20:27, skipping insertion in model container [2022-02-20 17:20:27,980 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:20:27" (3/3) ... [2022-02-20 17:20:28,000 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound2.c [2022-02-20 17:20:28,005 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:20:28,005 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:20:28,044 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:20:28,050 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:20:28,050 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:20:28,096 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 17 states have (on average 1.411764705882353) internal successors, (24), 18 states have internal predecessors, (24), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:20:28,100 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 17:20:28,100 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:28,101 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:28,101 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:28,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:28,106 INFO L85 PathProgramCache]: Analyzing trace with hash 1165920622, now seen corresponding path program 1 times [2022-02-20 17:20:28,133 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:20:28,135 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [308357398] [2022-02-20 17:20:28,135 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:28,136 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:20:28,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:20:28,138 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:20:28,154 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 17:20:28,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:28,228 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 17:20:28,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:28,244 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:28,369 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(10bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {33#true} is VALID [2022-02-20 17:20:28,370 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {33#true} is VALID [2022-02-20 17:20:28,370 INFO L272 TraceCheckUtils]: 2: Hoare triple {33#true} call assume_abort_if_not((if ~bvsge32(main_~x~0#1, 1bv32) then 1bv32 else 0bv32)); {33#true} is VALID [2022-02-20 17:20:28,371 INFO L290 TraceCheckUtils]: 3: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:20:28,371 INFO L290 TraceCheckUtils]: 4: Hoare triple {33#true} assume 0bv32 == ~cond;assume false; {33#true} is VALID [2022-02-20 17:20:28,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} assume true; {33#true} is VALID [2022-02-20 17:20:28,371 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {33#true} {33#true} #61#return; {33#true} is VALID [2022-02-20 17:20:28,372 INFO L272 TraceCheckUtils]: 7: Hoare triple {33#true} call assume_abort_if_not((if ~bvsge32(main_~y~0#1, 1bv32) then 1bv32 else 0bv32)); {33#true} is VALID [2022-02-20 17:20:28,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-02-20 17:20:28,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} assume 0bv32 == ~cond;assume false; {33#true} is VALID [2022-02-20 17:20:28,372 INFO L290 TraceCheckUtils]: 10: Hoare triple {33#true} assume true; {33#true} is VALID [2022-02-20 17:20:28,381 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {33#true} {33#true} #63#return; {33#true} is VALID [2022-02-20 17:20:28,382 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} main_~a~0#1 := ~sign_extendFrom32To64(main_~x~0#1);main_~b~0#1 := ~sign_extendFrom32To64(main_~y~0#1);main_~p~0#1 := 1bv64;main_~q~0#1 := 0bv64;main_~r~0#1 := 0bv64;main_~s~0#1 := 1bv64; {33#true} is VALID [2022-02-20 17:20:28,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {33#true} assume !true; {34#false} is VALID [2022-02-20 17:20:28,387 INFO L272 TraceCheckUtils]: 14: Hoare triple {34#false} call __VERIFIER_assert((if 0bv64 == ~bvsub64(main_~a~0#1, main_~b~0#1) then 1bv32 else 0bv32)); {34#false} is VALID [2022-02-20 17:20:28,387 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-02-20 17:20:28,388 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} assume 0bv32 == ~cond; {34#false} is VALID [2022-02-20 17:20:28,388 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-02-20 17:20:28,389 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:20:28,390 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:28,390 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:20:28,391 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [308357398] [2022-02-20 17:20:28,392 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [308357398] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:28,392 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:28,393 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:20:28,396 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1311906079] [2022-02-20 17:20:28,398 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:28,404 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-02-20 17:20:28,407 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:28,410 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:28,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:28,447 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:20:28,448 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:20:28,468 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:20:28,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:20:28,471 INFO L87 Difference]: Start difference. First operand has 30 states, 17 states have (on average 1.411764705882353) internal successors, (24), 18 states have internal predecessors, (24), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:30,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:30,563 INFO L93 Difference]: Finished difference Result 57 states and 89 transitions. [2022-02-20 17:20:30,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:20:30,563 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-02-20 17:20:30,564 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:30,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:30,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 89 transitions. [2022-02-20 17:20:30,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:30,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 89 transitions. [2022-02-20 17:20:30,579 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 89 transitions. [2022-02-20 17:20:31,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:31,831 INFO L225 Difference]: With dead ends: 57 [2022-02-20 17:20:31,832 INFO L226 Difference]: Without dead ends: 26 [2022-02-20 17:20:31,835 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 17 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:20:31,838 INFO L933 BasicCegarLoop]: 39 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, 39 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:20:31,839 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:20:31,853 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-02-20 17:20:31,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 26. [2022-02-20 17:20:31,866 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:31,867 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:31,867 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:31,868 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:31,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:31,872 INFO L93 Difference]: Finished difference Result 26 states and 35 transitions. [2022-02-20 17:20:31,873 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:20:31,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:31,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:31,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 26 states. [2022-02-20 17:20:31,875 INFO L87 Difference]: Start difference. First operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 26 states. [2022-02-20 17:20:31,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:31,879 INFO L93 Difference]: Finished difference Result 26 states and 35 transitions. [2022-02-20 17:20:31,879 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:20:31,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:31,880 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:31,880 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:31,880 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:31,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:31,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 35 transitions. [2022-02-20 17:20:31,885 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 35 transitions. Word has length 18 [2022-02-20 17:20:31,885 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:31,885 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 35 transitions. [2022-02-20 17:20:31,886 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:31,886 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 35 transitions. [2022-02-20 17:20:31,887 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:20:31,887 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:31,887 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:31,898 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:32,096 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:20:32,096 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:32,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:32,097 INFO L85 PathProgramCache]: Analyzing trace with hash -542319922, now seen corresponding path program 1 times [2022-02-20 17:20:32,098 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:20:32,098 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [981637765] [2022-02-20 17:20:32,098 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:32,099 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:20:32,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:20:32,100 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:20:32,103 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 17:20:32,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:32,133 INFO L263 TraceCheckSpWp]: Trace formula consists of 45 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 17:20:32,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:32,141 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:32,332 INFO L290 TraceCheckUtils]: 0: Hoare triple {260#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(10bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {265#(= ~counter~0 (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,334 INFO L272 TraceCheckUtils]: 2: Hoare triple {265#(= ~counter~0 (_ bv0 32))} call assume_abort_if_not((if ~bvsge32(main_~x~0#1, 1bv32) then 1bv32 else 0bv32)); {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,335 INFO L290 TraceCheckUtils]: 3: Hoare triple {265#(= ~counter~0 (_ bv0 32))} ~cond := #in~cond; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,335 INFO L290 TraceCheckUtils]: 4: Hoare triple {265#(= ~counter~0 (_ bv0 32))} assume !(0bv32 == ~cond); {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {265#(= ~counter~0 (_ bv0 32))} assume true; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,337 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {265#(= ~counter~0 (_ bv0 32))} {265#(= ~counter~0 (_ bv0 32))} #61#return; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,339 INFO L272 TraceCheckUtils]: 7: Hoare triple {265#(= ~counter~0 (_ bv0 32))} call assume_abort_if_not((if ~bvsge32(main_~y~0#1, 1bv32) then 1bv32 else 0bv32)); {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {265#(= ~counter~0 (_ bv0 32))} ~cond := #in~cond; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {265#(= ~counter~0 (_ bv0 32))} assume !(0bv32 == ~cond); {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,341 INFO L290 TraceCheckUtils]: 10: Hoare triple {265#(= ~counter~0 (_ bv0 32))} assume true; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,341 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {265#(= ~counter~0 (_ bv0 32))} {265#(= ~counter~0 (_ bv0 32))} #63#return; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {265#(= ~counter~0 (_ bv0 32))} main_~a~0#1 := ~sign_extendFrom32To64(main_~x~0#1);main_~b~0#1 := ~sign_extendFrom32To64(main_~y~0#1);main_~p~0#1 := 1bv64;main_~q~0#1 := 0bv64;main_~r~0#1 := 0bv64;main_~s~0#1 := 1bv64; {265#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:20:32,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {265#(= ~counter~0 (_ bv0 32))} main_#t~post6#1 := ~counter~0;~counter~0 := ~bvadd32(1bv32, main_#t~post6#1); {305#(= |ULTIMATE.start_main_#t~post6#1| (_ bv0 32))} is VALID [2022-02-20 17:20:32,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {305#(= |ULTIMATE.start_main_#t~post6#1| (_ bv0 32))} assume !~bvslt32(main_#t~post6#1, 2bv32);havoc main_#t~post6#1; {261#false} is VALID [2022-02-20 17:20:32,344 INFO L272 TraceCheckUtils]: 15: Hoare triple {261#false} call __VERIFIER_assert((if 0bv64 == ~bvsub64(main_~a~0#1, main_~b~0#1) then 1bv32 else 0bv32)); {261#false} is VALID [2022-02-20 17:20:32,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {261#false} ~cond := #in~cond; {261#false} is VALID [2022-02-20 17:20:32,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {261#false} assume 0bv32 == ~cond; {261#false} is VALID [2022-02-20 17:20:32,345 INFO L290 TraceCheckUtils]: 18: Hoare triple {261#false} assume !false; {261#false} is VALID [2022-02-20 17:20:32,345 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:20:32,345 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:32,345 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:20:32,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [981637765] [2022-02-20 17:20:32,346 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [981637765] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:32,346 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:32,346 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 17:20:32,347 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1322881723] [2022-02-20 17:20:32,349 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:32,352 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:20:32,353 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:32,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:32,371 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:32,372 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:20:32,373 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:20:32,374 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:20:32,375 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:20:32,377 INFO L87 Difference]: Start difference. First operand 26 states and 35 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:38,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:38,554 INFO L93 Difference]: Finished difference Result 38 states and 50 transitions. [2022-02-20 17:20:38,554 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:20:38,554 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:20:38,555 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:38,555 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:38,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 17:20:38,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:38,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 17:20:38,561 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-02-20 17:20:39,226 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:39,229 INFO L225 Difference]: With dead ends: 38 [2022-02-20 17:20:39,229 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:20:39,229 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:20:39,230 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 0 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:39,231 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 87 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:20:39,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:20:39,235 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:20:39,235 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:39,236 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:39,236 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:39,237 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:39,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:39,240 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:20:39,240 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:20:39,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:39,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:39,241 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 28 states. [2022-02-20 17:20:39,241 INFO L87 Difference]: Start difference. First operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 28 states. [2022-02-20 17:20:39,244 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:39,244 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:20:39,244 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:20:39,245 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:39,245 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:39,245 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:39,246 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:39,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 9 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:20:39,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 37 transitions. [2022-02-20 17:20:39,248 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 37 transitions. Word has length 19 [2022-02-20 17:20:39,249 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:39,249 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-02-20 17:20:39,249 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:39,249 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:20:39,250 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:20:39,250 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:39,250 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:39,257 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:39,452 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:20:39,452 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:39,453 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:39,453 INFO L85 PathProgramCache]: Analyzing trace with hash -540651626, now seen corresponding path program 1 times [2022-02-20 17:20:39,453 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:20:39,454 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1554361740] [2022-02-20 17:20:39,454 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:39,454 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:20:39,454 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:20:39,455 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:20:39,463 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2022-02-20 17:20:39,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:39,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 45 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 17:20:39,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:39,589 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:39,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {473#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(10bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {473#true} is VALID [2022-02-20 17:20:39,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {473#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {473#true} is VALID [2022-02-20 17:20:39,823 INFO L272 TraceCheckUtils]: 2: Hoare triple {473#true} call assume_abort_if_not((if ~bvsge32(main_~x~0#1, 1bv32) then 1bv32 else 0bv32)); {473#true} is VALID [2022-02-20 17:20:39,823 INFO L290 TraceCheckUtils]: 3: Hoare triple {473#true} ~cond := #in~cond; {473#true} is VALID [2022-02-20 17:20:39,823 INFO L290 TraceCheckUtils]: 4: Hoare triple {473#true} assume !(0bv32 == ~cond); {473#true} is VALID [2022-02-20 17:20:39,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {473#true} assume true; {473#true} is VALID [2022-02-20 17:20:39,824 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {473#true} {473#true} #61#return; {473#true} is VALID [2022-02-20 17:20:39,824 INFO L272 TraceCheckUtils]: 7: Hoare triple {473#true} call assume_abort_if_not((if ~bvsge32(main_~y~0#1, 1bv32) then 1bv32 else 0bv32)); {473#true} is VALID [2022-02-20 17:20:39,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {473#true} ~cond := #in~cond; {473#true} is VALID [2022-02-20 17:20:39,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {473#true} assume !(0bv32 == ~cond); {473#true} is VALID [2022-02-20 17:20:39,825 INFO L290 TraceCheckUtils]: 10: Hoare triple {473#true} assume true; {473#true} is VALID [2022-02-20 17:20:39,825 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {473#true} {473#true} #63#return; {473#true} is VALID [2022-02-20 17:20:39,826 INFO L290 TraceCheckUtils]: 12: Hoare triple {473#true} main_~a~0#1 := ~sign_extendFrom32To64(main_~x~0#1);main_~b~0#1 := ~sign_extendFrom32To64(main_~y~0#1);main_~p~0#1 := 1bv64;main_~q~0#1 := 0bv64;main_~r~0#1 := 0bv64;main_~s~0#1 := 1bv64; {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:39,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} main_#t~post6#1 := ~counter~0;~counter~0 := ~bvadd32(1bv32, main_#t~post6#1); {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:39,827 INFO L290 TraceCheckUtils]: 14: Hoare triple {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} assume !!~bvslt32(main_#t~post6#1, 2bv32);havoc main_#t~post6#1; {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:39,828 INFO L272 TraceCheckUtils]: 15: Hoare triple {514#(and (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} call __VERIFIER_assert((if 1bv64 == ~bvsub64(~bvmul64(main_~p~0#1, main_~s~0#1), ~bvmul64(main_~r~0#1, main_~q~0#1)) then 1bv32 else 0bv32)); {524#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:39,829 INFO L290 TraceCheckUtils]: 16: Hoare triple {524#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {528#(= __VERIFIER_assert_~cond (_ bv1 32))} is VALID [2022-02-20 17:20:39,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {528#(= __VERIFIER_assert_~cond (_ bv1 32))} assume 0bv32 == ~cond; {474#false} is VALID [2022-02-20 17:20:39,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {474#false} assume !false; {474#false} is VALID [2022-02-20 17:20:39,830 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:20:39,830 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:39,830 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:20:39,830 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1554361740] [2022-02-20 17:20:39,830 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1554361740] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:39,831 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:39,831 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:20:39,831 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2132834983] [2022-02-20 17:20:39,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:39,832 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:20:39,832 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:39,832 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:39,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:39,907 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:20:39,908 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:20:39,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:20:39,908 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:20:39,909 INFO L87 Difference]: Start difference. First operand 28 states and 37 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:46,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:46,294 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-02-20 17:20:46,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:20:46,295 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:20:46,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:20:46,295 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:46,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 17:20:46,298 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:46,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 17:20:46,300 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-02-20 17:20:47,326 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:47,327 INFO L225 Difference]: With dead ends: 45 [2022-02-20 17:20:47,328 INFO L226 Difference]: Without dead ends: 43 [2022-02-20 17:20:47,328 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 15 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:20:47,329 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 8 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:20:47,329 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 130 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-02-20 17:20:47,330 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-02-20 17:20:47,336 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2022-02-20 17:20:47,336 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:20:47,336 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:47,337 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:47,337 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:47,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:47,341 INFO L93 Difference]: Finished difference Result 43 states and 60 transitions. [2022-02-20 17:20:47,341 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 60 transitions. [2022-02-20 17:20:47,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:47,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:47,343 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 43 states. [2022-02-20 17:20:47,343 INFO L87 Difference]: Start difference. First operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 43 states. [2022-02-20 17:20:47,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:20:47,346 INFO L93 Difference]: Finished difference Result 43 states and 60 transitions. [2022-02-20 17:20:47,346 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 60 transitions. [2022-02-20 17:20:47,347 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:20:47,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:20:47,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:20:47,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:20:47,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 15 states have call successors, (15), 3 states have call predecessors, (15), 3 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:20:47,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 59 transitions. [2022-02-20 17:20:47,351 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 59 transitions. Word has length 19 [2022-02-20 17:20:47,352 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:20:47,352 INFO L470 AbstractCegarLoop]: Abstraction has 42 states and 59 transitions. [2022-02-20 17:20:47,352 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, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:20:47,352 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 59 transitions. [2022-02-20 17:20:47,353 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 17:20:47,353 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:20:47,353 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:20:47,363 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 17:20:47,558 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:20:47,558 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:20:47,559 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:20:47,559 INFO L85 PathProgramCache]: Analyzing trace with hash -276555716, now seen corresponding path program 1 times [2022-02-20 17:20:47,559 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:20:47,559 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1943099180] [2022-02-20 17:20:47,559 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:20:47,560 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:20:47,560 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:20:47,560 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:20:47,561 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2022-02-20 17:20:47,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:47,706 INFO L263 TraceCheckSpWp]: Trace formula consists of 52 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 17:20:47,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:20:47,714 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:20:48,141 INFO L290 TraceCheckUtils]: 0: Hoare triple {752#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(10bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {752#true} is VALID [2022-02-20 17:20:48,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {752#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {752#true} is VALID [2022-02-20 17:20:48,141 INFO L272 TraceCheckUtils]: 2: Hoare triple {752#true} call assume_abort_if_not((if ~bvsge32(main_~x~0#1, 1bv32) then 1bv32 else 0bv32)); {752#true} is VALID [2022-02-20 17:20:48,142 INFO L290 TraceCheckUtils]: 3: Hoare triple {752#true} ~cond := #in~cond; {766#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} is VALID [2022-02-20 17:20:48,142 INFO L290 TraceCheckUtils]: 4: Hoare triple {766#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} assume !(0bv32 == ~cond); {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:20:48,143 INFO L290 TraceCheckUtils]: 5: Hoare triple {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} assume true; {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:20:48,143 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} {752#true} #61#return; {777#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} is VALID [2022-02-20 17:20:48,143 INFO L272 TraceCheckUtils]: 7: Hoare triple {777#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} call assume_abort_if_not((if ~bvsge32(main_~y~0#1, 1bv32) then 1bv32 else 0bv32)); {752#true} is VALID [2022-02-20 17:20:48,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {752#true} ~cond := #in~cond; {766#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} is VALID [2022-02-20 17:20:48,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {766#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} assume !(0bv32 == ~cond); {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:20:48,145 INFO L290 TraceCheckUtils]: 10: Hoare triple {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} assume true; {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:20:48,146 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {770#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} {777#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} #63#return; {793#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)))} is VALID [2022-02-20 17:20:48,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {793#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)))} main_~a~0#1 := ~sign_extendFrom32To64(main_~x~0#1);main_~b~0#1 := ~sign_extendFrom32To64(main_~y~0#1);main_~p~0#1 := 1bv64;main_~q~0#1 := 0bv64;main_~r~0#1 := 0bv64;main_~s~0#1 := 1bv64; {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:48,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} main_#t~post6#1 := ~counter~0;~counter~0 := ~bvadd32(1bv32, main_#t~post6#1); {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:48,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} assume !!~bvslt32(main_#t~post6#1, 2bv32);havoc main_#t~post6#1; {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:48,148 INFO L272 TraceCheckUtils]: 15: Hoare triple {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} call __VERIFIER_assert((if 1bv64 == ~bvsub64(~bvmul64(main_~p~0#1, main_~s~0#1), ~bvmul64(main_~r~0#1, main_~q~0#1)) then 1bv32 else 0bv32)); {752#true} is VALID [2022-02-20 17:20:48,148 INFO L290 TraceCheckUtils]: 16: Hoare triple {752#true} ~cond := #in~cond; {752#true} is VALID [2022-02-20 17:20:48,148 INFO L290 TraceCheckUtils]: 17: Hoare triple {752#true} assume !(0bv32 == ~cond); {752#true} is VALID [2022-02-20 17:20:48,148 INFO L290 TraceCheckUtils]: 18: Hoare triple {752#true} assume true; {752#true} is VALID [2022-02-20 17:20:48,150 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {752#true} {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} #65#return; {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} is VALID [2022-02-20 17:20:48,151 INFO L272 TraceCheckUtils]: 20: Hoare triple {797#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~a~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~x~0#1|)) (= (_ bv0 64) |ULTIMATE.start_main_~r~0#1|) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~p~0#1| (_ bv1 64)))} call __VERIFIER_assert((if main_~a~0#1 == ~bvadd64(~bvmul64(~sign_extendFrom32To64(main_~y~0#1), main_~r~0#1), ~bvmul64(~sign_extendFrom32To64(main_~x~0#1), main_~p~0#1)) then 1bv32 else 0bv32)); {822#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:20:48,151 INFO L290 TraceCheckUtils]: 21: Hoare triple {822#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {826#(= __VERIFIER_assert_~cond (_ bv1 32))} is VALID [2022-02-20 17:20:48,152 INFO L290 TraceCheckUtils]: 22: Hoare triple {826#(= __VERIFIER_assert_~cond (_ bv1 32))} assume 0bv32 == ~cond; {753#false} is VALID [2022-02-20 17:20:48,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {753#false} assume !false; {753#false} is VALID [2022-02-20 17:20:48,152 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:20:48,153 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:20:48,153 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:20:48,153 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1943099180] [2022-02-20 17:20:48,153 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1943099180] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:20:48,153 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:20:48,153 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 17:20:48,154 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2048517645] [2022-02-20 17:20:48,154 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:20:48,154 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 24 [2022-02-20 17:20:48,155 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:20:48,155 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:20:48,361 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:20:48,361 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:20:48,361 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:20:48,362 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:20:48,362 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:20:48,362 INFO L87 Difference]: Start difference. First operand 42 states and 59 transitions. Second operand has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:21:00,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:21:00,820 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-02-20 17:21:00,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:21:00,820 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 24 [2022-02-20 17:21:00,820 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:21:00,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:21:00,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-02-20 17:21:00,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:21:00,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-02-20 17:21:00,825 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 60 transitions. [2022-02-20 17:21:01,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:21:01,668 INFO L225 Difference]: With dead ends: 49 [2022-02-20 17:21:01,669 INFO L226 Difference]: Without dead ends: 47 [2022-02-20 17:21:01,669 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:21:01,670 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 37 mSDsluCounter, 148 mSDsCounter, 0 mSdLazyCounter, 84 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 84 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-02-20 17:21:01,670 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 185 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-02-20 17:21:01,671 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-02-20 17:21:01,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-02-20 17:21:01,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:21:01,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:21:01,677 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:21:01,678 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:21:01,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:21:01,681 INFO L93 Difference]: Finished difference Result 47 states and 63 transitions. [2022-02-20 17:21:01,681 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 63 transitions. [2022-02-20 17:21:01,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:21:01,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:21:01,682 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 47 states. [2022-02-20 17:21:01,683 INFO L87 Difference]: Start difference. First operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 47 states. [2022-02-20 17:21:01,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:21:01,686 INFO L93 Difference]: Finished difference Result 47 states and 63 transitions. [2022-02-20 17:21:01,686 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 63 transitions. [2022-02-20 17:21:01,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:21:01,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:21:01,687 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:21:01,687 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:21:01,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 28 states have internal predecessors, (33), 15 states have call successors, (15), 4 states have call predecessors, (15), 4 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 17:21:01,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 62 transitions. [2022-02-20 17:21:01,690 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 62 transitions. Word has length 24 [2022-02-20 17:21:01,690 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:21:01,690 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 62 transitions. [2022-02-20 17:21:01,691 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:21:01,691 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 62 transitions. [2022-02-20 17:21:01,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:21:01,691 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:21:01,692 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:21:01,709 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 17:21:01,907 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:21:01,907 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:21:01,907 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:21:01,908 INFO L85 PathProgramCache]: Analyzing trace with hash -1836785898, now seen corresponding path program 1 times [2022-02-20 17:21:01,908 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:21:01,908 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2136172779] [2022-02-20 17:21:01,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:21:01,909 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:21:01,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:21:01,910 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:21:01,914 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Waiting until timeout for monitored process [2022-02-20 17:21:02,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:21:02,094 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 17:21:02,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:21:02,104 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:21:02,481 INFO L290 TraceCheckUtils]: 0: Hoare triple {1070#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(10bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {1070#true} is VALID [2022-02-20 17:21:02,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {1070#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_#t~post6#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~x~0#1, main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~x~0#1;havoc main_~y~0#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1070#true} is VALID [2022-02-20 17:21:02,482 INFO L272 TraceCheckUtils]: 2: Hoare triple {1070#true} call assume_abort_if_not((if ~bvsge32(main_~x~0#1, 1bv32) then 1bv32 else 0bv32)); {1070#true} is VALID [2022-02-20 17:21:02,482 INFO L290 TraceCheckUtils]: 3: Hoare triple {1070#true} ~cond := #in~cond; {1084#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} is VALID [2022-02-20 17:21:02,483 INFO L290 TraceCheckUtils]: 4: Hoare triple {1084#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} assume !(0bv32 == ~cond); {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:21:02,483 INFO L290 TraceCheckUtils]: 5: Hoare triple {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} assume true; {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:21:02,484 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} {1070#true} #61#return; {1095#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} is VALID [2022-02-20 17:21:02,484 INFO L272 TraceCheckUtils]: 7: Hoare triple {1095#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} call assume_abort_if_not((if ~bvsge32(main_~y~0#1, 1bv32) then 1bv32 else 0bv32)); {1070#true} is VALID [2022-02-20 17:21:02,486 INFO L290 TraceCheckUtils]: 8: Hoare triple {1070#true} ~cond := #in~cond; {1084#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} is VALID [2022-02-20 17:21:02,487 INFO L290 TraceCheckUtils]: 9: Hoare triple {1084#(= |assume_abort_if_not_#in~cond| assume_abort_if_not_~cond)} assume !(0bv32 == ~cond); {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:21:02,487 INFO L290 TraceCheckUtils]: 10: Hoare triple {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} assume true; {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} is VALID [2022-02-20 17:21:02,488 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1088#(not (= |assume_abort_if_not_#in~cond| (_ bv0 32)))} {1095#(bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32))} #63#return; {1111#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)))} is VALID [2022-02-20 17:21:02,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {1111#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)))} main_~a~0#1 := ~sign_extendFrom32To64(main_~x~0#1);main_~b~0#1 := ~sign_extendFrom32To64(main_~y~0#1);main_~p~0#1 := 1bv64;main_~q~0#1 := 0bv64;main_~r~0#1 := 0bv64;main_~s~0#1 := 1bv64; {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} is VALID [2022-02-20 17:21:02,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} main_#t~post6#1 := ~counter~0;~counter~0 := ~bvadd32(1bv32, main_#t~post6#1); {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} is VALID [2022-02-20 17:21:02,490 INFO L290 TraceCheckUtils]: 14: Hoare triple {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} assume !!~bvslt32(main_#t~post6#1, 2bv32);havoc main_#t~post6#1; {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} is VALID [2022-02-20 17:21:02,490 INFO L272 TraceCheckUtils]: 15: Hoare triple {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} call __VERIFIER_assert((if 1bv64 == ~bvsub64(~bvmul64(main_~p~0#1, main_~s~0#1), ~bvmul64(main_~r~0#1, main_~q~0#1)) then 1bv32 else 0bv32)); {1070#true} is VALID [2022-02-20 17:21:02,490 INFO L290 TraceCheckUtils]: 16: Hoare triple {1070#true} ~cond := #in~cond; {1070#true} is VALID [2022-02-20 17:21:02,490 INFO L290 TraceCheckUtils]: 17: Hoare triple {1070#true} assume !(0bv32 == ~cond); {1070#true} is VALID [2022-02-20 17:21:02,491 INFO L290 TraceCheckUtils]: 18: Hoare triple {1070#true} assume true; {1070#true} is VALID [2022-02-20 17:21:02,492 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1070#true} {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} #65#return; {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} is VALID [2022-02-20 17:21:02,492 INFO L272 TraceCheckUtils]: 20: Hoare triple {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} call __VERIFIER_assert((if main_~a~0#1 == ~bvadd64(~bvmul64(~sign_extendFrom32To64(main_~y~0#1), main_~r~0#1), ~bvmul64(~sign_extendFrom32To64(main_~x~0#1), main_~p~0#1)) then 1bv32 else 0bv32)); {1070#true} is VALID [2022-02-20 17:21:02,492 INFO L290 TraceCheckUtils]: 21: Hoare triple {1070#true} ~cond := #in~cond; {1070#true} is VALID [2022-02-20 17:21:02,492 INFO L290 TraceCheckUtils]: 22: Hoare triple {1070#true} assume !(0bv32 == ~cond); {1070#true} is VALID [2022-02-20 17:21:02,492 INFO L290 TraceCheckUtils]: 23: Hoare triple {1070#true} assume true; {1070#true} is VALID [2022-02-20 17:21:02,494 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1070#true} {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} #67#return; {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} is VALID [2022-02-20 17:21:02,495 INFO L272 TraceCheckUtils]: 25: Hoare triple {1115#(and (bvsge |ULTIMATE.start_main_~x~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~s~0#1| (_ bv1 64)) (= |ULTIMATE.start_main_~b~0#1| ((_ sign_extend 32) |ULTIMATE.start_main_~y~0#1|)) (bvsge |ULTIMATE.start_main_~y~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~q~0#1| (_ bv0 64)))} call __VERIFIER_assert((if main_~b~0#1 == ~bvadd64(~bvmul64(~sign_extendFrom32To64(main_~x~0#1), main_~q~0#1), ~bvmul64(~sign_extendFrom32To64(main_~y~0#1), main_~s~0#1)) then 1bv32 else 0bv32)); {1155#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:21:02,496 INFO L290 TraceCheckUtils]: 26: Hoare triple {1155#(= (_ bv1 32) |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1159#(= __VERIFIER_assert_~cond (_ bv1 32))} is VALID [2022-02-20 17:21:02,496 INFO L290 TraceCheckUtils]: 27: Hoare triple {1159#(= __VERIFIER_assert_~cond (_ bv1 32))} assume 0bv32 == ~cond; {1071#false} is VALID [2022-02-20 17:21:02,496 INFO L290 TraceCheckUtils]: 28: Hoare triple {1071#false} assume !false; {1071#false} is VALID [2022-02-20 17:21:02,496 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 17:21:02,497 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:21:02,497 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:21:02,497 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2136172779] [2022-02-20 17:21:02,497 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2136172779] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:21:02,497 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:21:02,497 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 17:21:02,498 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [156558212] [2022-02-20 17:21:02,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:21:02,498 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 17:21:02,499 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:21:02,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:21:02,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:21:02,711 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:21:02,711 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:21:02,711 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:21:02,711 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:21:02,712 INFO L87 Difference]: Start difference. First operand 46 states and 62 transitions. Second operand has 9 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4)