./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/prod4br-ll_unwindbound100.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/prod4br-ll_unwindbound100.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 4d17ed8dd7de3007f02b2c3df3a75e1fbb5469b0133c538c149df8a118a565d0 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:38:08,675 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:38:08,677 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:38:08,715 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:38:08,718 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:38:08,720 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:38:08,722 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:38:08,724 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:38:08,726 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:38:08,730 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:38:08,731 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:38:08,732 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:38:08,732 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:38:08,734 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:38:08,735 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:38:08,737 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:38:08,738 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:38:08,738 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:38:08,742 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:38:08,745 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:38:08,746 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:38:08,747 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:38:08,748 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:38:08,749 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:38:08,755 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:38:08,756 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:38:08,756 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:38:08,757 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:38:08,757 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:38:08,758 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:38:08,758 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:38:08,759 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:38:08,760 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:38:08,761 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:38:08,761 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:38:08,762 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:38:08,762 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:38:08,762 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:38:08,762 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:38:08,763 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:38:08,763 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:38:08,764 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:38:08,791 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:38:08,791 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:38:08,792 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:38:08,792 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:38:08,793 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:38:08,793 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:38:08,793 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:38:08,794 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:38:08,794 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:38:08,794 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:38:08,795 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:38:08,795 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:38:08,795 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:38:08,795 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:38:08,796 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:38:08,796 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:38:08,796 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:38:08,796 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:38:08,796 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:38:08,797 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:38:08,797 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:38:08,797 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:38:08,797 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:38:08,797 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:38:08,798 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:38:08,798 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:38:08,798 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:38:08,798 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:38:08,798 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:38:08,799 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:38:08,799 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:38:08,799 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:38:08,799 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:38:08,799 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 -> 4d17ed8dd7de3007f02b2c3df3a75e1fbb5469b0133c538c149df8a118a565d0 [2022-02-20 17:38:09,004 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:38:09,021 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:38:09,023 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:38:09,025 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:38:09,025 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:38:09,026 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/prod4br-ll_unwindbound100.c [2022-02-20 17:38:09,083 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9e87959c1/893822148d484d519042da411f35c1b1/FLAG1a1a59826 [2022-02-20 17:38:09,425 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:38:09,425 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/prod4br-ll_unwindbound100.c [2022-02-20 17:38:09,429 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9e87959c1/893822148d484d519042da411f35c1b1/FLAG1a1a59826 [2022-02-20 17:38:09,437 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9e87959c1/893822148d484d519042da411f35c1b1 [2022-02-20 17:38:09,438 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:38:09,439 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:38:09,440 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:38:09,440 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:38:09,442 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:38:09,443 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,444 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2452f6a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09, skipping insertion in model container [2022-02-20 17:38:09,444 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,448 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:38:09,456 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:38:09,590 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/prod4br-ll_unwindbound100.c[524,537] [2022-02-20 17:38:09,605 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:38:09,610 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:38:09,618 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/prod4br-ll_unwindbound100.c[524,537] [2022-02-20 17:38:09,625 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:38:09,633 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:38:09,634 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09 WrapperNode [2022-02-20 17:38:09,634 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:38:09,635 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:38:09,635 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:38:09,635 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:38:09,639 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:38:09" (1/1) ... [2022-02-20 17:38:09,643 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:38:09" (1/1) ... [2022-02-20 17:38:09,658 INFO L137 Inliner]: procedures = 14, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 59 [2022-02-20 17:38:09,658 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:38:09,659 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:38:09,659 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:38:09,659 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:38:09,663 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,663 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,664 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,665 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,668 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,670 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,671 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,672 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:38:09,673 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:38:09,673 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:38:09,674 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:38:09,674 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (1/1) ... [2022-02-20 17:38:09,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:38:09,692 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:38:09,703 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:38:09,706 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:38:09,736 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:38:09,736 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:38:09,736 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:38:09,736 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:38:09,736 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:38:09,736 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:38:09,773 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:38:09,774 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:38:09,912 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:38:09,916 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:38:09,917 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 17:38:09,918 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:38:09 BoogieIcfgContainer [2022-02-20 17:38:09,918 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:38:09,919 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:38:09,919 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:38:09,921 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:38:09,921 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:38:09" (1/3) ... [2022-02-20 17:38:09,922 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4cc0a76e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:38:09, skipping insertion in model container [2022-02-20 17:38:09,922 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:38:09" (2/3) ... [2022-02-20 17:38:09,922 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4cc0a76e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:38:09, skipping insertion in model container [2022-02-20 17:38:09,922 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:38:09" (3/3) ... [2022-02-20 17:38:09,923 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound100.c [2022-02-20 17:38:09,926 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:38:09,926 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:38:09,953 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:38:09,971 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:38:09,972 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:38:09,984 INFO L276 IsEmpty]: Start isEmpty. Operand has 23 states, 17 states have (on average 1.5294117647058822) internal successors, (26), 18 states have internal predecessors, (26), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:38:09,987 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 17:38:09,987 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:09,987 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:09,988 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:09,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:09,991 INFO L85 PathProgramCache]: Analyzing trace with hash -563977895, now seen corresponding path program 1 times [2022-02-20 17:38:09,999 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:09,999 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [320735682] [2022-02-20 17:38:10,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:10,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:10,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:10,113 INFO L290 TraceCheckUtils]: 0: Hoare triple {26#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {26#true} is VALID [2022-02-20 17:38:10,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {26#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post6#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {26#true} is VALID [2022-02-20 17:38:10,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {26#true} assume 0 == assume_abort_if_not_~cond#1;assume false; {27#false} is VALID [2022-02-20 17:38:10,114 INFO L290 TraceCheckUtils]: 3: Hoare triple {27#false} assume { :end_inline_assume_abort_if_not } 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; {27#false} is VALID [2022-02-20 17:38:10,115 INFO L290 TraceCheckUtils]: 4: Hoare triple {27#false} assume !true; {27#false} is VALID [2022-02-20 17:38:10,115 INFO L272 TraceCheckUtils]: 5: Hoare triple {27#false} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {27#false} is VALID [2022-02-20 17:38:10,115 INFO L290 TraceCheckUtils]: 6: Hoare triple {27#false} ~cond := #in~cond; {27#false} is VALID [2022-02-20 17:38:10,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {27#false} assume 0 == ~cond; {27#false} is VALID [2022-02-20 17:38:10,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {27#false} assume !false; {27#false} is VALID [2022-02-20 17:38:10,127 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:10,127 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:38:10,128 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [320735682] [2022-02-20 17:38:10,128 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [320735682] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:38:10,128 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:38:10,128 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:38:10,130 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [623700578] [2022-02-20 17:38:10,132 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:38:10,135 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 17:38:10,136 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:38:10,139 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:10,155 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:38:10,156 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:38:10,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:38:10,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:38:10,182 INFO L87 Difference]: Start difference. First operand has 23 states, 17 states have (on average 1.5294117647058822) internal successors, (26), 18 states have internal predecessors, (26), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,230 INFO L93 Difference]: Finished difference Result 43 states and 63 transitions. [2022-02-20 17:38:10,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:38:10,231 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 17:38:10,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:38:10,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 63 transitions. [2022-02-20 17:38:10,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 63 transitions. [2022-02-20 17:38:10,246 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 63 transitions. [2022-02-20 17:38:10,334 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:10,340 INFO L225 Difference]: With dead ends: 43 [2022-02-20 17:38:10,342 INFO L226 Difference]: Without dead ends: 19 [2022-02-20 17:38:10,344 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 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:38:10,348 INFO L933 BasicCegarLoop]: 29 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, 29 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:38:10,349 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:38:10,363 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19 states. [2022-02-20 17:38:10,373 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19 to 19. [2022-02-20 17:38:10,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:38:10,374 INFO L82 GeneralOperation]: Start isEquivalent. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,375 INFO L74 IsIncluded]: Start isIncluded. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,375 INFO L87 Difference]: Start difference. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,379 INFO L93 Difference]: Finished difference Result 19 states and 25 transitions. [2022-02-20 17:38:10,379 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 25 transitions. [2022-02-20 17:38:10,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:10,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:10,380 INFO L74 IsIncluded]: Start isIncluded. First operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 19 states. [2022-02-20 17:38:10,381 INFO L87 Difference]: Start difference. First operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 19 states. [2022-02-20 17:38:10,384 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,384 INFO L93 Difference]: Finished difference Result 19 states and 25 transitions. [2022-02-20 17:38:10,384 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 25 transitions. [2022-02-20 17:38:10,385 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:10,385 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:10,385 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:38:10,385 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:38:10,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 15 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 25 transitions. [2022-02-20 17:38:10,388 INFO L78 Accepts]: Start accepts. Automaton has 19 states and 25 transitions. Word has length 9 [2022-02-20 17:38:10,388 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:38:10,388 INFO L470 AbstractCegarLoop]: Abstraction has 19 states and 25 transitions. [2022-02-20 17:38:10,388 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,388 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 25 transitions. [2022-02-20 17:38:10,389 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 17:38:10,389 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:10,389 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:10,389 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:38:10,390 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:10,390 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:10,390 INFO L85 PathProgramCache]: Analyzing trace with hash -1986058659, now seen corresponding path program 1 times [2022-02-20 17:38:10,391 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:10,391 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1739334140] [2022-02-20 17:38:10,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:10,391 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:10,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:10,437 INFO L290 TraceCheckUtils]: 0: Hoare triple {147#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {149#(= ~counter~0 0)} is VALID [2022-02-20 17:38:10,438 INFO L290 TraceCheckUtils]: 1: Hoare triple {149#(= ~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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {149#(= ~counter~0 0)} is VALID [2022-02-20 17:38:10,438 INFO L290 TraceCheckUtils]: 2: Hoare triple {149#(= ~counter~0 0)} assume !(0 == assume_abort_if_not_~cond#1); {149#(= ~counter~0 0)} is VALID [2022-02-20 17:38:10,439 INFO L290 TraceCheckUtils]: 3: Hoare triple {149#(= ~counter~0 0)} assume { :end_inline_assume_abort_if_not } 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; {149#(= ~counter~0 0)} is VALID [2022-02-20 17:38:10,440 INFO L290 TraceCheckUtils]: 4: Hoare triple {149#(= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {150#(= |ULTIMATE.start_main_#t~post6#1| 0)} is VALID [2022-02-20 17:38:10,440 INFO L290 TraceCheckUtils]: 5: Hoare triple {150#(= |ULTIMATE.start_main_#t~post6#1| 0)} assume !(main_#t~post6#1 < 100);havoc main_#t~post6#1; {148#false} is VALID [2022-02-20 17:38:10,441 INFO L272 TraceCheckUtils]: 6: Hoare triple {148#false} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {148#false} is VALID [2022-02-20 17:38:10,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {148#false} ~cond := #in~cond; {148#false} is VALID [2022-02-20 17:38:10,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {148#false} assume 0 == ~cond; {148#false} is VALID [2022-02-20 17:38:10,441 INFO L290 TraceCheckUtils]: 9: Hoare triple {148#false} assume !false; {148#false} is VALID [2022-02-20 17:38:10,442 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:10,442 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:38:10,442 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1739334140] [2022-02-20 17:38:10,443 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1739334140] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:38:10,443 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:38:10,443 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 17:38:10,443 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [781643700] [2022-02-20 17:38:10,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:38:10,444 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 17:38:10,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:38:10,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,454 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:10,455 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:38:10,455 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:38:10,456 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:38:10,456 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:38:10,456 INFO L87 Difference]: Start difference. First operand 19 states and 25 transitions. Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,518 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-02-20 17:38:10,518 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:38:10,519 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 17:38:10,519 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:38:10,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 36 transitions. [2022-02-20 17:38:10,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 36 transitions. [2022-02-20 17:38:10,527 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 36 transitions. [2022-02-20 17:38:10,558 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:10,559 INFO L225 Difference]: With dead ends: 29 [2022-02-20 17:38:10,560 INFO L226 Difference]: Without dead ends: 21 [2022-02-20 17:38:10,563 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 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:38:10,565 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 63 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:38:10,565 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 63 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:38:10,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-02-20 17:38:10,571 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 21. [2022-02-20 17:38:10,571 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:38:10,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,572 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,573 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,575 INFO L93 Difference]: Finished difference Result 21 states and 27 transitions. [2022-02-20 17:38:10,575 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 27 transitions. [2022-02-20 17:38:10,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:10,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:10,576 INFO L74 IsIncluded]: Start isIncluded. First operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-02-20 17:38:10,577 INFO L87 Difference]: Start difference. First operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-02-20 17:38:10,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,579 INFO L93 Difference]: Finished difference Result 21 states and 27 transitions. [2022-02-20 17:38:10,580 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 27 transitions. [2022-02-20 17:38:10,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:10,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:10,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:38:10,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:38:10,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:10,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 27 transitions. [2022-02-20 17:38:10,584 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 27 transitions. Word has length 10 [2022-02-20 17:38:10,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:38:10,585 INFO L470 AbstractCegarLoop]: Abstraction has 21 states and 27 transitions. [2022-02-20 17:38:10,586 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,586 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 27 transitions. [2022-02-20 17:38:10,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 17:38:10,587 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:10,588 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:10,588 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 17:38:10,588 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:10,589 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:10,589 INFO L85 PathProgramCache]: Analyzing trace with hash -1984271199, now seen corresponding path program 1 times [2022-02-20 17:38:10,589 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:10,589 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [550792428] [2022-02-20 17:38:10,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:10,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:10,615 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:38:10,620 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1333849322] [2022-02-20 17:38:10,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:10,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:38:10,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:38:10,622 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:38:10,629 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:38:10,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:10,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:38:10,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:10,675 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:38:10,807 INFO L290 TraceCheckUtils]: 0: Hoare triple {260#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {260#true} is VALID [2022-02-20 17:38:10,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {260#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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {260#true} is VALID [2022-02-20 17:38:10,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {260#true} assume !(0 == assume_abort_if_not_~cond#1); {260#true} is VALID [2022-02-20 17:38:10,809 INFO L290 TraceCheckUtils]: 3: Hoare triple {260#true} assume { :end_inline_assume_abort_if_not } 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; {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:10,809 INFO L290 TraceCheckUtils]: 4: Hoare triple {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:10,810 INFO L290 TraceCheckUtils]: 5: Hoare triple {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:10,811 INFO L272 TraceCheckUtils]: 6: Hoare triple {274#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {284#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:38:10,812 INFO L290 TraceCheckUtils]: 7: Hoare triple {284#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {288#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:38:10,812 INFO L290 TraceCheckUtils]: 8: Hoare triple {288#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {261#false} is VALID [2022-02-20 17:38:10,812 INFO L290 TraceCheckUtils]: 9: Hoare triple {261#false} assume !false; {261#false} is VALID [2022-02-20 17:38:10,812 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:10,813 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:38:10,813 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:38:10,813 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [550792428] [2022-02-20 17:38:10,813 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:38:10,813 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1333849322] [2022-02-20 17:38:10,813 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1333849322] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:38:10,814 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:38:10,814 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:38:10,814 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [976460512] [2022-02-20 17:38:10,814 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:38:10,814 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 17:38:10,815 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:38:10,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:10,823 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:38:10,823 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:38:10,824 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:38:10,824 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:38:10,824 INFO L87 Difference]: Start difference. First operand 21 states and 27 transitions. Second operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:10,959 INFO L93 Difference]: Finished difference Result 34 states and 45 transitions. [2022-02-20 17:38:10,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:38:10,959 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 17:38:10,959 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:38:10,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-02-20 17:38:10,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:10,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-02-20 17:38:10,962 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-02-20 17:38:11,002 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:38:11,004 INFO L225 Difference]: With dead ends: 34 [2022-02-20 17:38:11,008 INFO L226 Difference]: Without dead ends: 32 [2022-02-20 17:38:11,009 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 6 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:38:11,012 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 9 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:38:11,013 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 58 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:38:11,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-02-20 17:38:11,019 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 26. [2022-02-20 17:38:11,019 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:38:11,020 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:38:11,020 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:38:11,020 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:38:11,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:11,029 INFO L93 Difference]: Finished difference Result 32 states and 43 transitions. [2022-02-20 17:38:11,029 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 43 transitions. [2022-02-20 17:38:11,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:11,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:11,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 32 states. [2022-02-20 17:38:11,032 INFO L87 Difference]: Start difference. First operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Second operand 32 states. [2022-02-20 17:38:11,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:11,034 INFO L93 Difference]: Finished difference Result 32 states and 43 transitions. [2022-02-20 17:38:11,034 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 43 transitions. [2022-02-20 17:38:11,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:11,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:11,039 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:38:11,039 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:38:11,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 21 states have internal predecessors, (25), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 17:38:11,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 32 transitions. [2022-02-20 17:38:11,044 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 32 transitions. Word has length 10 [2022-02-20 17:38:11,044 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:38:11,044 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 32 transitions. [2022-02-20 17:38:11,044 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:38:11,045 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 32 transitions. [2022-02-20 17:38:11,045 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 17:38:11,045 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:11,045 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:11,065 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 17:38:11,265 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:38:11,265 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:11,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:11,266 INFO L85 PathProgramCache]: Analyzing trace with hash -1194524114, now seen corresponding path program 1 times [2022-02-20 17:38:11,266 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:11,266 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [253756626] [2022-02-20 17:38:11,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:11,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:11,281 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:38:11,284 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2005036309] [2022-02-20 17:38:11,284 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:11,285 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:38:11,285 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:38:11,286 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:38:11,287 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:38:11,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:11,316 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 17:38:11,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:11,324 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:38:20,024 INFO L290 TraceCheckUtils]: 0: Hoare triple {438#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {438#true} is VALID [2022-02-20 17:38:20,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {438#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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {446#(or (and (not (<= 1 |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:38:20,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {446#(or (and (not (<= 1 |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|)))} assume !(0 == assume_abort_if_not_~cond#1); {450#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:38:20,026 INFO L290 TraceCheckUtils]: 3: Hoare triple {450#(<= 1 |ULTIMATE.start_main_~y~0#1|)} assume { :end_inline_assume_abort_if_not } 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; {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:38:20,026 INFO L290 TraceCheckUtils]: 4: Hoare triple {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:38:20,026 INFO L290 TraceCheckUtils]: 5: Hoare triple {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} is VALID [2022-02-20 17:38:20,027 INFO L272 TraceCheckUtils]: 6: Hoare triple {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {438#true} is VALID [2022-02-20 17:38:20,027 INFO L290 TraceCheckUtils]: 7: Hoare triple {438#true} ~cond := #in~cond; {467#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:38:20,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {467#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {471#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:38:20,028 INFO L290 TraceCheckUtils]: 9: Hoare triple {471#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {471#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:38:22,031 WARN L284 TraceCheckUtils]: 10: Hoare quadruple {471#(not (= |__VERIFIER_assert_#in~cond| 0))} {454#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|))} #63#return; {478#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|) (or (= (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) 0) (and (not (= |ULTIMATE.start_main_~a~0#1| 0)) (= (mod (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~b~0#1|)) 0))))} is UNKNOWN [2022-02-20 17:38:22,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {478#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (<= |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~b~0#1|) (or (= (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) 0) (and (not (= |ULTIMATE.start_main_~a~0#1| 0)) (= (mod (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) (* |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~b~0#1|)) 0))))} assume !(0 != main_~a~0#1 && 0 != main_~b~0#1); {482#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) 0))} is VALID [2022-02-20 17:38:22,033 INFO L272 TraceCheckUtils]: 12: Hoare triple {482#(and (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (+ (* (- 1) |ULTIMATE.start_main_~q~0#1|) (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) 0))} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {486#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:38:22,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {486#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {490#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:38:22,034 INFO L290 TraceCheckUtils]: 14: Hoare triple {490#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {439#false} is VALID [2022-02-20 17:38:22,034 INFO L290 TraceCheckUtils]: 15: Hoare triple {439#false} assume !false; {439#false} is VALID [2022-02-20 17:38:22,034 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:22,034 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:38:35,061 INFO L290 TraceCheckUtils]: 15: Hoare triple {439#false} assume !false; {439#false} is VALID [2022-02-20 17:38:35,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {490#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {439#false} is VALID [2022-02-20 17:38:35,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {486#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {490#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:38:35,063 INFO L272 TraceCheckUtils]: 12: Hoare triple {506#(= |ULTIMATE.start_main_~q~0#1| (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|))} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {486#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:38:35,064 INFO L290 TraceCheckUtils]: 11: Hoare triple {510#(or (= |ULTIMATE.start_main_~q~0#1| (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) (and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (not (= |ULTIMATE.start_main_~a~0#1| 0))))} assume !(0 != main_~a~0#1 && 0 != main_~b~0#1); {506#(= |ULTIMATE.start_main_~q~0#1| (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|))} is VALID [2022-02-20 17:38:35,065 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {471#(not (= |__VERIFIER_assert_#in~cond| 0))} {438#true} #63#return; {510#(or (= |ULTIMATE.start_main_~q~0#1| (* |ULTIMATE.start_main_~x~0#1| |ULTIMATE.start_main_~y~0#1|)) (and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (not (= |ULTIMATE.start_main_~a~0#1| 0))))} is VALID [2022-02-20 17:38:35,065 INFO L290 TraceCheckUtils]: 9: Hoare triple {471#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {471#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:38:35,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {523#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {471#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:38:35,066 INFO L290 TraceCheckUtils]: 7: Hoare triple {438#true} ~cond := #in~cond; {523#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:38:35,066 INFO L272 TraceCheckUtils]: 6: Hoare triple {438#true} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {438#true} is VALID [2022-02-20 17:38:35,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {438#true} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {438#true} is VALID [2022-02-20 17:38:35,066 INFO L290 TraceCheckUtils]: 4: Hoare triple {438#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {438#true} is VALID [2022-02-20 17:38:35,066 INFO L290 TraceCheckUtils]: 3: Hoare triple {438#true} assume { :end_inline_assume_abort_if_not } 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; {438#true} is VALID [2022-02-20 17:38:35,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {438#true} assume !(0 == assume_abort_if_not_~cond#1); {438#true} is VALID [2022-02-20 17:38:35,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {438#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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {438#true} is VALID [2022-02-20 17:38:35,067 INFO L290 TraceCheckUtils]: 0: Hoare triple {438#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {438#true} is VALID [2022-02-20 17:38:35,067 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:35,067 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:38:35,067 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [253756626] [2022-02-20 17:38:35,067 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:38:35,067 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2005036309] [2022-02-20 17:38:35,067 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2005036309] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:38:35,068 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:38:35,068 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 14 [2022-02-20 17:38:35,068 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2108918714] [2022-02-20 17:38:35,069 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:38:35,069 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 16 [2022-02-20 17:38:35,069 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:38:35,070 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:37,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 26 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:37,092 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 17:38:37,092 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:38:37,092 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 17:38:37,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-02-20 17:38:37,092 INFO L87 Difference]: Start difference. First operand 26 states and 32 transitions. Second operand has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:39,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:39,610 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-02-20 17:38:39,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 17:38:39,610 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 16 [2022-02-20 17:38:39,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:38:39,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:39,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 61 transitions. [2022-02-20 17:38:39,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:39,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 61 transitions. [2022-02-20 17:38:39,614 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 61 transitions. [2022-02-20 17:38:41,681 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 60 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:41,682 INFO L225 Difference]: With dead ends: 47 [2022-02-20 17:38:41,682 INFO L226 Difference]: Without dead ends: 45 [2022-02-20 17:38:41,683 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 21 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=99, Invalid=363, Unknown=0, NotChecked=0, Total=462 [2022-02-20 17:38:41,683 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 67 mSDsluCounter, 74 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 57 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 218 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 57 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:38:41,684 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 87 Invalid, 218 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [57 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-02-20 17:38:41,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-02-20 17:38:41,706 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 31. [2022-02-20 17:38:41,707 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:38:41,707 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 17:38:41,707 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 17:38:41,707 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 17:38:41,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:41,709 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-02-20 17:38:41,710 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-02-20 17:38:41,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:41,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:41,710 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) Second operand 45 states. [2022-02-20 17:38:41,710 INFO L87 Difference]: Start difference. First operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) Second operand 45 states. [2022-02-20 17:38:41,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:41,712 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-02-20 17:38:41,712 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-02-20 17:38:41,713 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:41,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:41,713 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:38:41,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:38:41,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 5 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (4), 2 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 17:38:41,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 37 transitions. [2022-02-20 17:38:41,714 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 37 transitions. Word has length 16 [2022-02-20 17:38:41,714 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:38:41,714 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 37 transitions. [2022-02-20 17:38:41,714 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 12 states have (on average 1.75) internal successors, (21), 11 states have internal predecessors, (21), 4 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:41,715 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 37 transitions. [2022-02-20 17:38:41,715 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:38:41,715 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:41,715 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:41,743 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:38:41,921 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:38:41,922 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:41,922 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:41,922 INFO L85 PathProgramCache]: Analyzing trace with hash -1756733383, now seen corresponding path program 1 times [2022-02-20 17:38:41,922 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:41,922 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [369634946] [2022-02-20 17:38:41,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:41,923 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:41,933 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:38:41,933 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1770209276] [2022-02-20 17:38:41,933 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:41,933 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:38:41,933 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:38:41,934 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:38:41,961 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:38:41,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:41,981 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 17:38:41,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:41,989 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:38:42,069 INFO L290 TraceCheckUtils]: 0: Hoare triple {760#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {765#(<= ~counter~0 0)} is VALID [2022-02-20 17:38:42,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {765#(<= ~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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {765#(<= ~counter~0 0)} is VALID [2022-02-20 17:38:42,070 INFO L290 TraceCheckUtils]: 2: Hoare triple {765#(<= ~counter~0 0)} assume !(0 == assume_abort_if_not_~cond#1); {765#(<= ~counter~0 0)} is VALID [2022-02-20 17:38:42,071 INFO L290 TraceCheckUtils]: 3: Hoare triple {765#(<= ~counter~0 0)} assume { :end_inline_assume_abort_if_not } 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; {765#(<= ~counter~0 0)} is VALID [2022-02-20 17:38:42,071 INFO L290 TraceCheckUtils]: 4: Hoare triple {765#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,072 INFO L290 TraceCheckUtils]: 5: Hoare triple {778#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {778#(<= ~counter~0 1)} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,081 INFO L290 TraceCheckUtils]: 7: Hoare triple {778#(<= ~counter~0 1)} ~cond := #in~cond; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {778#(<= ~counter~0 1)} assume !(0 == ~cond); {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {778#(<= ~counter~0 1)} assume true; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {778#(<= ~counter~0 1)} {778#(<= ~counter~0 1)} #63#return; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {778#(<= ~counter~0 1)} assume !!(0 != main_~a~0#1 && 0 != main_~b~0#1); {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,083 INFO L290 TraceCheckUtils]: 12: Hoare triple {778#(<= ~counter~0 1)} assume 0 == (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then main_~a~0#1 % 2 - 2 else main_~a~0#1 % 2) && 0 == (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then main_~b~0#1 % 2 - 2 else main_~b~0#1 % 2);main_~a~0#1 := (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then 1 + main_~a~0#1 / 2 else main_~a~0#1 / 2);main_~b~0#1 := (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then 1 + main_~b~0#1 / 2 else main_~b~0#1 / 2);main_~p~0#1 := 4 * main_~p~0#1; {778#(<= ~counter~0 1)} is VALID [2022-02-20 17:38:42,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {778#(<= ~counter~0 1)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {806#(<= |ULTIMATE.start_main_#t~post6#1| 1)} is VALID [2022-02-20 17:38:42,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {806#(<= |ULTIMATE.start_main_#t~post6#1| 1)} assume !(main_#t~post6#1 < 100);havoc main_#t~post6#1; {761#false} is VALID [2022-02-20 17:38:42,084 INFO L272 TraceCheckUtils]: 15: Hoare triple {761#false} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {761#false} is VALID [2022-02-20 17:38:42,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {761#false} ~cond := #in~cond; {761#false} is VALID [2022-02-20 17:38:42,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {761#false} assume 0 == ~cond; {761#false} is VALID [2022-02-20 17:38:42,085 INFO L290 TraceCheckUtils]: 18: Hoare triple {761#false} assume !false; {761#false} is VALID [2022-02-20 17:38:42,085 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:42,085 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:38:42,182 INFO L290 TraceCheckUtils]: 18: Hoare triple {761#false} assume !false; {761#false} is VALID [2022-02-20 17:38:42,183 INFO L290 TraceCheckUtils]: 17: Hoare triple {761#false} assume 0 == ~cond; {761#false} is VALID [2022-02-20 17:38:42,183 INFO L290 TraceCheckUtils]: 16: Hoare triple {761#false} ~cond := #in~cond; {761#false} is VALID [2022-02-20 17:38:42,183 INFO L272 TraceCheckUtils]: 15: Hoare triple {761#false} call __VERIFIER_assert((if main_~q~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {761#false} is VALID [2022-02-20 17:38:42,183 INFO L290 TraceCheckUtils]: 14: Hoare triple {834#(< |ULTIMATE.start_main_#t~post6#1| 100)} assume !(main_#t~post6#1 < 100);havoc main_#t~post6#1; {761#false} is VALID [2022-02-20 17:38:42,184 INFO L290 TraceCheckUtils]: 13: Hoare triple {838#(< ~counter~0 100)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {834#(< |ULTIMATE.start_main_#t~post6#1| 100)} is VALID [2022-02-20 17:38:42,184 INFO L290 TraceCheckUtils]: 12: Hoare triple {838#(< ~counter~0 100)} assume 0 == (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then main_~a~0#1 % 2 - 2 else main_~a~0#1 % 2) && 0 == (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then main_~b~0#1 % 2 - 2 else main_~b~0#1 % 2);main_~a~0#1 := (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then 1 + main_~a~0#1 / 2 else main_~a~0#1 / 2);main_~b~0#1 := (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then 1 + main_~b~0#1 / 2 else main_~b~0#1 / 2);main_~p~0#1 := 4 * main_~p~0#1; {838#(< ~counter~0 100)} is VALID [2022-02-20 17:38:42,184 INFO L290 TraceCheckUtils]: 11: Hoare triple {838#(< ~counter~0 100)} assume !!(0 != main_~a~0#1 && 0 != main_~b~0#1); {838#(< ~counter~0 100)} is VALID [2022-02-20 17:38:42,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {760#true} {838#(< ~counter~0 100)} #63#return; {838#(< ~counter~0 100)} is VALID [2022-02-20 17:38:42,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {760#true} assume true; {760#true} is VALID [2022-02-20 17:38:42,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {760#true} assume !(0 == ~cond); {760#true} is VALID [2022-02-20 17:38:42,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {760#true} ~cond := #in~cond; {760#true} is VALID [2022-02-20 17:38:42,186 INFO L272 TraceCheckUtils]: 6: Hoare triple {838#(< ~counter~0 100)} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {760#true} is VALID [2022-02-20 17:38:42,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {838#(< ~counter~0 100)} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {838#(< ~counter~0 100)} is VALID [2022-02-20 17:38:42,187 INFO L290 TraceCheckUtils]: 4: Hoare triple {866#(< ~counter~0 99)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {838#(< ~counter~0 100)} is VALID [2022-02-20 17:38:42,187 INFO L290 TraceCheckUtils]: 3: Hoare triple {866#(< ~counter~0 99)} assume { :end_inline_assume_abort_if_not } 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; {866#(< ~counter~0 99)} is VALID [2022-02-20 17:38:42,187 INFO L290 TraceCheckUtils]: 2: Hoare triple {866#(< ~counter~0 99)} assume !(0 == assume_abort_if_not_~cond#1); {866#(< ~counter~0 99)} is VALID [2022-02-20 17:38:42,188 INFO L290 TraceCheckUtils]: 1: Hoare triple {866#(< ~counter~0 99)} 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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {866#(< ~counter~0 99)} is VALID [2022-02-20 17:38:42,188 INFO L290 TraceCheckUtils]: 0: Hoare triple {760#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {866#(< ~counter~0 99)} is VALID [2022-02-20 17:38:42,188 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:42,188 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:38:42,188 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [369634946] [2022-02-20 17:38:42,189 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:38:42,189 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1770209276] [2022-02-20 17:38:42,189 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1770209276] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:38:42,189 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:38:42,189 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 5] total 8 [2022-02-20 17:38:42,189 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1430816260] [2022-02-20 17:38:42,189 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:38:42,190 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 19 [2022-02-20 17:38:42,190 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:38:42,190 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:42,214 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:42,215 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 17:38:42,215 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:38:42,215 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 17:38:42,215 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-02-20 17:38:42,216 INFO L87 Difference]: Start difference. First operand 31 states and 37 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:42,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:42,445 INFO L93 Difference]: Finished difference Result 95 states and 115 transitions. [2022-02-20 17:38:42,446 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 17:38:42,450 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 19 [2022-02-20 17:38:42,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:38:42,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:42,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-02-20 17:38:42,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:42,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-02-20 17:38:42,461 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 98 transitions. [2022-02-20 17:38:42,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:38:42,543 INFO L225 Difference]: With dead ends: 95 [2022-02-20 17:38:42,543 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 17:38:42,544 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:38:42,544 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 66 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:38:42,544 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [66 Valid, 150 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:38:42,545 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 17:38:42,580 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 79. [2022-02-20 17:38:42,580 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:38:42,581 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:38:42,581 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:38:42,581 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:38:42,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:42,585 INFO L93 Difference]: Finished difference Result 85 states and 102 transitions. [2022-02-20 17:38:42,585 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 102 transitions. [2022-02-20 17:38:42,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:42,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:42,586 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 85 states. [2022-02-20 17:38:42,586 INFO L87 Difference]: Start difference. First operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 85 states. [2022-02-20 17:38:42,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:38:42,589 INFO L93 Difference]: Finished difference Result 85 states and 102 transitions. [2022-02-20 17:38:42,589 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 102 transitions. [2022-02-20 17:38:42,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:38:42,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:38:42,590 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:38:42,590 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:38:42,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 57 states have (on average 1.3508771929824561) internal successors, (77), 61 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 17:38:42,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 99 transitions. [2022-02-20 17:38:42,592 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 99 transitions. Word has length 19 [2022-02-20 17:38:42,592 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:38:42,592 INFO L470 AbstractCegarLoop]: Abstraction has 79 states and 99 transitions. [2022-02-20 17:38:42,592 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:38:42,593 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 99 transitions. [2022-02-20 17:38:42,593 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:38:42,593 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:38:42,593 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:38:42,612 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-20 17:38:42,812 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:38:42,812 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:38:42,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:38:42,813 INFO L85 PathProgramCache]: Analyzing trace with hash -1754945923, now seen corresponding path program 1 times [2022-02-20 17:38:42,813 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:38:42,813 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2038400398] [2022-02-20 17:38:42,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:42,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:38:42,824 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:38:42,824 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [47324223] [2022-02-20 17:38:42,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:38:42,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:38:42,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:38:42,832 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:38:42,847 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:38:42,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:42,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 17:38:42,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:38:42,889 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:38:44,290 INFO L290 TraceCheckUtils]: 0: Hoare triple {1285#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1285#true} is VALID [2022-02-20 17:38:44,291 INFO L290 TraceCheckUtils]: 1: Hoare triple {1285#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_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~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;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if main_~y~0#1 >= 1 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1293#(or (and (not (<= 1 |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|)))} is VALID [2022-02-20 17:38:44,291 INFO L290 TraceCheckUtils]: 2: Hoare triple {1293#(or (and (not (<= 1 |ULTIMATE.start_main_~y~0#1|)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|)))} assume !(0 == assume_abort_if_not_~cond#1); {1297#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:38:44,292 INFO L290 TraceCheckUtils]: 3: Hoare triple {1297#(<= 1 |ULTIMATE.start_main_~y~0#1|)} assume { :end_inline_assume_abort_if_not } 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; {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:44,292 INFO L290 TraceCheckUtils]: 4: Hoare triple {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:44,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:44,293 INFO L272 TraceCheckUtils]: 6: Hoare triple {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {1285#true} is VALID [2022-02-20 17:38:44,293 INFO L290 TraceCheckUtils]: 7: Hoare triple {1285#true} ~cond := #in~cond; {1285#true} is VALID [2022-02-20 17:38:44,293 INFO L290 TraceCheckUtils]: 8: Hoare triple {1285#true} assume !(0 == ~cond); {1285#true} is VALID [2022-02-20 17:38:44,293 INFO L290 TraceCheckUtils]: 9: Hoare triple {1285#true} assume true; {1285#true} is VALID [2022-02-20 17:38:44,296 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1285#true} {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} #63#return; {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:44,296 INFO L290 TraceCheckUtils]: 11: Hoare triple {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !!(0 != main_~a~0#1 && 0 != main_~b~0#1); {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:38:44,297 INFO L290 TraceCheckUtils]: 12: Hoare triple {1301#(and (= |ULTIMATE.start_main_~p~0#1| 1) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume 0 == (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then main_~a~0#1 % 2 - 2 else main_~a~0#1 % 2) && 0 == (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then main_~b~0#1 % 2 - 2 else main_~b~0#1 % 2);main_~a~0#1 := (if main_~a~0#1 < 0 && 0 != main_~a~0#1 % 2 then 1 + main_~a~0#1 / 2 else main_~a~0#1 / 2);main_~b~0#1 := (if main_~b~0#1 < 0 && 0 != main_~b~0#1 % 2 then 1 + main_~b~0#1 / 2 else main_~b~0#1 / 2);main_~p~0#1 := 4 * main_~p~0#1; {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} is VALID [2022-02-20 17:38:44,297 INFO L290 TraceCheckUtils]: 13: Hoare triple {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} is VALID [2022-02-20 17:38:44,298 INFO L290 TraceCheckUtils]: 14: Hoare triple {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} assume !!(main_#t~post6#1 < 100);havoc main_#t~post6#1; {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} is VALID [2022-02-20 17:38:44,300 INFO L272 TraceCheckUtils]: 15: Hoare triple {1329#(and (= |ULTIMATE.start_main_~p~0#1| 4) (<= 1 |ULTIMATE.start_main_~y~0#1|) (= (div |ULTIMATE.start_main_~x~0#1| 2) |ULTIMATE.start_main_~a~0#1|) (= |ULTIMATE.start_main_~b~0#1| (div |ULTIMATE.start_main_~y~0#1| 2)) (= |ULTIMATE.start_main_~q~0#1| 0) (= (mod |ULTIMATE.start_main_~x~0#1| 2) 0) (<= (mod |ULTIMATE.start_main_~y~0#1| 2) 0))} call __VERIFIER_assert((if main_~q~0#1 + main_~a~0#1 * main_~b~0#1 * main_~p~0#1 == main_~x~0#1 * main_~y~0#1 then 1 else 0)); {1339#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:38:44,301 INFO L290 TraceCheckUtils]: 16: Hoare triple {1339#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1343#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:38:44,302 INFO L290 TraceCheckUtils]: 17: Hoare triple {1343#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1286#false} is VALID [2022-02-20 17:38:44,302 INFO L290 TraceCheckUtils]: 18: Hoare triple {1286#false} assume !false; {1286#false} is VALID [2022-02-20 17:38:44,302 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 17:38:44,302 INFO L328 TraceCheckSpWp]: Computing backward predicates...