./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/unreach-call.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 84cfde4a Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --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 ebd450d45b6e74a7932eec9848ae0cf358cd00d24cc83ea5ec60a19fac36ea9d --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-11 11:26:05,554 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-11 11:26:05,633 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-10-11 11:26:05,640 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-11 11:26:05,642 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-11 11:26:05,671 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-11 11:26:05,672 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-11 11:26:05,675 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-11 11:26:05,675 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-11 11:26:05,676 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-11 11:26:05,676 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-11 11:26:05,676 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-11 11:26:05,677 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-11 11:26:05,677 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-11 11:26:05,677 INFO L153 SettingsManager]: * Use SBE=true [2024-10-11 11:26:05,678 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-11 11:26:05,678 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-11 11:26:05,679 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-11 11:26:05,679 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-11 11:26:05,680 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-11 11:26:05,680 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-11 11:26:05,681 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-11 11:26:05,681 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-11 11:26:05,681 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-11 11:26:05,682 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-11 11:26:05,682 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-11 11:26:05,682 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-11 11:26:05,682 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-11 11:26:05,683 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-11 11:26:05,683 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-11 11:26:05,684 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-11 11:26:05,684 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-11 11:26:05,684 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 11:26:05,684 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-11 11:26:05,685 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-11 11:26:05,685 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-11 11:26:05,685 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-11 11:26:05,685 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-10-11 11:26:05,686 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-11 11:26:05,686 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-11 11:26:05,686 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-11 11:26:05,687 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-11 11:26:05,687 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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-clean/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-clean/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness 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 -> ebd450d45b6e74a7932eec9848ae0cf358cd00d24cc83ea5ec60a19fac36ea9d [2024-10-11 11:26:05,937 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-11 11:26:05,960 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-11 11:26:05,963 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-11 11:26:05,964 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-11 11:26:05,965 INFO L274 PluginConnector]: CDTParser initialized [2024-10-11 11:26:05,966 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:07,419 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-11 11:26:07,604 INFO L384 CDTParser]: Found 1 translation units. [2024-10-11 11:26:07,605 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:07,612 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/80503c765/6e8d13575ff348dcb6c073281a58e69f/FLAGfa4934356 [2024-10-11 11:26:07,994 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/80503c765/6e8d13575ff348dcb6c073281a58e69f [2024-10-11 11:26:07,997 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-11 11:26:07,998 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-11 11:26:07,999 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-11 11:26:07,999 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-11 11:26:08,003 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-11 11:26:08,004 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 11:26:07" (1/1) ... [2024-10-11 11:26:08,005 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@24234e49 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08, skipping insertion in model container [2024-10-11 11:26:08,005 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 11:26:07" (1/1) ... [2024-10-11 11:26:08,028 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-11 11:26:08,181 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i[915,928] [2024-10-11 11:26:08,227 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 11:26:08,239 INFO L200 MainTranslator]: Completed pre-run [2024-10-11 11:26:08,249 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i[915,928] [2024-10-11 11:26:08,263 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 11:26:08,280 INFO L204 MainTranslator]: Completed translation [2024-10-11 11:26:08,281 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08 WrapperNode [2024-10-11 11:26:08,281 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-11 11:26:08,282 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-11 11:26:08,282 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-11 11:26:08,282 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-11 11:26:08,289 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,297 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,331 INFO L138 Inliner]: procedures = 26, calls = 23, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 88 [2024-10-11 11:26:08,331 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-11 11:26:08,332 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-11 11:26:08,332 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-11 11:26:08,332 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-11 11:26:08,346 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,346 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,348 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,376 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-10-11 11:26:08,376 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,377 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,383 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,387 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,388 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,390 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,392 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-11 11:26:08,393 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-11 11:26:08,394 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-11 11:26:08,394 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-11 11:26:08,395 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (1/1) ... [2024-10-11 11:26:08,404 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 11:26:08,419 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 11:26:08,438 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-10-11 11:26:08,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-10-11 11:26:08,495 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-11 11:26:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2024-10-11 11:26:08,496 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2024-10-11 11:26:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-11 11:26:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-11 11:26:08,497 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-11 11:26:08,575 INFO L238 CfgBuilder]: Building ICFG [2024-10-11 11:26:08,578 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-11 11:26:08,823 INFO L? ?]: Removed 11 outVars from TransFormulas that were not future-live. [2024-10-11 11:26:08,823 INFO L287 CfgBuilder]: Performing block encoding [2024-10-11 11:26:08,856 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-11 11:26:08,856 INFO L314 CfgBuilder]: Removed 1 assume(true) statements. [2024-10-11 11:26:08,857 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 11:26:08 BoogieIcfgContainer [2024-10-11 11:26:08,859 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-11 11:26:08,861 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-11 11:26:08,862 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-11 11:26:08,866 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-11 11:26:08,866 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.10 11:26:07" (1/3) ... [2024-10-11 11:26:08,867 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67696660 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 11:26:08, skipping insertion in model container [2024-10-11 11:26:08,868 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:08" (2/3) ... [2024-10-11 11:26:08,869 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67696660 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 11:26:08, skipping insertion in model container [2024-10-11 11:26:08,869 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 11:26:08" (3/3) ... [2024-10-11 11:26:08,871 INFO L112 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:08,888 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-11 11:26:08,888 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-10-11 11:26:09,008 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 11:26:09,018 INFO L333 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, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, 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, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@41e9b478, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 11:26:09,019 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-10-11 11:26:09,065 INFO L276 IsEmpty]: Start isEmpty. Operand has 36 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 24 states have internal predecessors, (34), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2024-10-11 11:26:09,086 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2024-10-11 11:26:09,086 INFO L207 NwaCegarLoop]: Found error trace [2024-10-11 11:26:09,087 INFO L215 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 11:26:09,088 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-11 11:26:09,093 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 11:26:09,094 INFO L85 PathProgramCache]: Analyzing trace with hash -1313351656, now seen corresponding path program 1 times [2024-10-11 11:26:09,103 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 11:26:09,103 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1634676521] [2024-10-11 11:26:09,104 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 11:26:09,104 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 11:26:09,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 11:26:09,307 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-11 11:26:09,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 11:26:09,468 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-11 11:26:09,471 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-10-11 11:26:09,472 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2024-10-11 11:26:09,474 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-10-11 11:26:09,478 INFO L407 BasicCegarLoop]: Path program histogram: [1] [2024-10-11 11:26:09,540 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-10-11 11:26:09,544 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 11.10 11:26:09 BoogieIcfgContainer [2024-10-11 11:26:09,544 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-10-11 11:26:09,545 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-10-11 11:26:09,545 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-10-11 11:26:09,545 INFO L274 PluginConnector]: Witness Printer initialized [2024-10-11 11:26:09,546 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 11:26:08" (3/4) ... [2024-10-11 11:26:09,548 INFO L142 WitnessPrinter]: No result that supports witness generation found [2024-10-11 11:26:09,549 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-10-11 11:26:09,550 INFO L158 Benchmark]: Toolchain (without parser) took 1552.18ms. Allocated memory is still 188.7MB. Free memory was 120.7MB in the beginning and 135.8MB in the end (delta: -15.1MB). There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 11:26:09,551 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 113.2MB. Free memory is still 78.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 11:26:09,551 INFO L158 Benchmark]: CACSL2BoogieTranslator took 282.16ms. Allocated memory is still 188.7MB. Free memory was 120.3MB in the beginning and 107.0MB in the end (delta: 13.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2024-10-11 11:26:09,552 INFO L158 Benchmark]: Boogie Procedure Inliner took 49.13ms. Allocated memory is still 188.7MB. Free memory was 106.7MB in the beginning and 104.5MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-11 11:26:09,553 INFO L158 Benchmark]: Boogie Preprocessor took 60.73ms. Allocated memory is still 188.7MB. Free memory was 104.5MB in the beginning and 101.1MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-10-11 11:26:09,554 INFO L158 Benchmark]: RCFGBuilder took 465.65ms. Allocated memory is still 188.7MB. Free memory was 101.1MB in the beginning and 84.3MB in the end (delta: 16.8MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2024-10-11 11:26:09,554 INFO L158 Benchmark]: TraceAbstraction took 682.93ms. Allocated memory is still 188.7MB. Free memory was 83.7MB in the beginning and 135.8MB in the end (delta: -52.1MB). There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 11:26:09,555 INFO L158 Benchmark]: Witness Printer took 4.24ms. Allocated memory is still 188.7MB. Free memory is still 135.8MB. There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 11:26:09,557 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 113.2MB. Free memory is still 78.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 282.16ms. Allocated memory is still 188.7MB. Free memory was 120.3MB in the beginning and 107.0MB in the end (delta: 13.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 49.13ms. Allocated memory is still 188.7MB. Free memory was 106.7MB in the beginning and 104.5MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 60.73ms. Allocated memory is still 188.7MB. Free memory was 104.5MB in the beginning and 101.1MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 465.65ms. Allocated memory is still 188.7MB. Free memory was 101.1MB in the beginning and 84.3MB in the end (delta: 16.8MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 682.93ms. Allocated memory is still 188.7MB. Free memory was 83.7MB in the beginning and 135.8MB in the end (delta: -52.1MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 4.24ms. Allocated memory is still 188.7MB. Free memory is still 135.8MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 76, overapproximation of someBinaryDOUBLEComparisonOperation at line 76. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] float var_1_1 = 2.5; [L23] unsigned char var_1_2 = 0; [L24] float var_1_3 = 9.3; [L25] float var_1_4 = 3.4; [L26] unsigned short int var_1_5 = 32; [L27] unsigned short int var_1_6 = 10; [L28] unsigned short int var_1_7 = 64; [L29] unsigned short int var_1_8 = 16; [L30] unsigned short int var_1_9 = 1; [L80] isInitial = 1 [L81] FCALL initially() [L82] int k_loop; [L83] k_loop = 0 VAL [isInitial=1, k_loop=0, var_1_1=5/2, var_1_2=0, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L83] COND TRUE k_loop < 1 [L84] FCALL updateLastVariables() [L85] CALL updateVariables() [L56] var_1_2 = __VERIFIER_nondet_uchar() [L57] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L57] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, var_1_1=5/2, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L58] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L58] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_3=93/10, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L59] var_1_3 = __VERIFIER_nondet_float() [L60] CALL assume_abort_if_not((var_1_3 >= -922337.2036854765600e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854765600e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L60] RET assume_abort_if_not((var_1_3 >= -922337.2036854765600e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854765600e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_4=17/5, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L61] var_1_4 = __VERIFIER_nondet_float() [L62] CALL assume_abort_if_not((var_1_4 >= -922337.2036854776000e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L62] RET assume_abort_if_not((var_1_4 >= -922337.2036854776000e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=10, var_1_7=64, var_1_8=16, var_1_9=1] [L63] var_1_6 = __VERIFIER_nondet_ushort() [L64] CALL assume_abort_if_not(var_1_6 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_7=64, var_1_8=16, var_1_9=1] [L64] RET assume_abort_if_not(var_1_6 >= 0) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_7=64, var_1_8=16, var_1_9=1] [L65] CALL assume_abort_if_not(var_1_6 <= 32767) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=64, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=64, var_1_8=16, var_1_9=1] [L65] RET assume_abort_if_not(var_1_6 <= 32767) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=64, var_1_8=16, var_1_9=1] [L66] var_1_7 = __VERIFIER_nondet_ushort() [L67] CALL assume_abort_if_not(var_1_7 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_8=16, var_1_9=1] [L67] RET assume_abort_if_not(var_1_7 >= 0) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_8=16, var_1_9=1] [L68] CALL assume_abort_if_not(var_1_7 <= 32767) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=16, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=16, var_1_9=1] [L68] RET assume_abort_if_not(var_1_7 <= 32767) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=16, var_1_9=1] [L69] var_1_8 = __VERIFIER_nondet_ushort() [L70] CALL assume_abort_if_not(var_1_8 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_9=1] [L70] RET assume_abort_if_not(var_1_8 >= 0) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_9=1] [L71] CALL assume_abort_if_not(var_1_8 <= 65534) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L71] RET assume_abort_if_not(var_1_8 <= 65534) VAL [isInitial=1, var_1_1=5/2, var_1_2=1, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L85] RET updateVariables() [L86] CALL step() [L34] COND TRUE \read(var_1_2) [L35] var_1_1 = var_1_3 VAL [isInitial=1, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=32, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L41] COND TRUE (var_1_1 + 8.125) > (var_1_1 * var_1_3) [L42] var_1_5 = (((((var_1_6 + var_1_7)) > (var_1_8)) ? ((var_1_6 + var_1_7)) : (var_1_8))) VAL [isInitial=1, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=5, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L46] signed long int stepLocal_0 = 5 * var_1_8; VAL [isInitial=1, stepLocal_0=20, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=5, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L47] COND FALSE !(((((var_1_3) < (var_1_1)) ? (var_1_3) : (var_1_1))) == var_1_1) VAL [isInitial=1, stepLocal_0=20, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=5, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L86] RET step() [L87] CALL, EXPR property() [L76-L77] return ((var_1_2 ? (var_1_1 == ((float) var_1_3)) : ((! (var_1_3 < var_1_4)) ? (var_1_1 == ((float) ((((var_1_3) < 0 ) ? -(var_1_3) : (var_1_3))))) : 1)) && (((var_1_1 + 8.125) > (var_1_1 * var_1_3)) ? (var_1_5 == ((unsigned short int) (((((var_1_6 + var_1_7)) > (var_1_8)) ? ((var_1_6 + var_1_7)) : (var_1_8))))) : (var_1_5 == ((unsigned short int) var_1_8)))) && ((((((var_1_3) < (var_1_1)) ? (var_1_3) : (var_1_1))) == var_1_1) ? ((var_1_6 > (5 * var_1_8)) ? ((var_1_1 < (var_1_1 * 256.5f)) ? (var_1_9 == ((unsigned short int) var_1_6)) : 1) : 1) : 1) ; [L87] RET, EXPR property() [L87] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=5, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] [L19] reach_error() VAL [isInitial=1, var_1_1=69, var_1_2=1, var_1_3=69, var_1_5=5, var_1_6=0, var_1_7=5, var_1_8=4, var_1_9=1] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 36 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.5s, OverallIterations: 1, TraceHistogramMax: 10, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.1s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=36occurred in iteration=0, InterpolantAutomatonStates: 0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 65 NumberOfCodeBlocks, 65 NumberOfCodeBlocksAsserted, 1 NumberOfCheckSat, 0 ConstructedInterpolants, 0 QuantifiedInterpolants, 0 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 0 InterpolantComputations, 0 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2024-10-11 11:26:09,585 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --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 ebd450d45b6e74a7932eec9848ae0cf358cd00d24cc83ea5ec60a19fac36ea9d --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-11 11:26:11,828 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-11 11:26:11,910 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-10-11 11:26:11,920 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-11 11:26:11,920 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-11 11:26:11,954 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-11 11:26:11,955 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-11 11:26:11,955 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-11 11:26:11,956 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-11 11:26:11,960 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-11 11:26:11,960 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-11 11:26:11,961 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-11 11:26:11,961 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-11 11:26:11,962 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-11 11:26:11,962 INFO L153 SettingsManager]: * Use SBE=true [2024-10-11 11:26:11,962 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-11 11:26:11,963 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-11 11:26:11,963 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-11 11:26:11,963 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-11 11:26:11,964 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-11 11:26:11,964 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-11 11:26:11,965 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-11 11:26:11,965 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-11 11:26:11,965 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-10-11 11:26:11,966 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-10-11 11:26:11,966 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-11 11:26:11,966 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-10-11 11:26:11,966 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-11 11:26:11,967 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-11 11:26:11,967 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-11 11:26:11,967 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-11 11:26:11,968 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-11 11:26:11,968 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-11 11:26:11,969 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-11 11:26:11,969 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 11:26:11,970 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-11 11:26:11,970 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-11 11:26:11,971 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-11 11:26:11,971 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-10-11 11:26:11,971 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-10-11 11:26:11,972 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-11 11:26:11,972 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-11 11:26:11,972 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-11 11:26:11,972 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-11 11:26:11,973 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-10-11 11:26:11,973 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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-clean/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-clean/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness 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 -> ebd450d45b6e74a7932eec9848ae0cf358cd00d24cc83ea5ec60a19fac36ea9d [2024-10-11 11:26:12,326 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-11 11:26:12,355 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-11 11:26:12,359 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-11 11:26:12,360 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-11 11:26:12,361 INFO L274 PluginConnector]: CDTParser initialized [2024-10-11 11:26:12,364 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:14,089 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-11 11:26:14,325 INFO L384 CDTParser]: Found 1 translation units. [2024-10-11 11:26:14,325 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:14,335 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/e043b53cd/7291017105574ad5b77d6d4f68c42e7b/FLAG448dbe4fa [2024-10-11 11:26:14,348 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/e043b53cd/7291017105574ad5b77d6d4f68c42e7b [2024-10-11 11:26:14,350 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-11 11:26:14,352 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-11 11:26:14,353 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-11 11:26:14,353 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-11 11:26:14,360 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-11 11:26:14,361 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,362 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@167f7606 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14, skipping insertion in model container [2024-10-11 11:26:14,362 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,388 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-11 11:26:14,581 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i[915,928] [2024-10-11 11:26:14,636 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 11:26:14,657 INFO L200 MainTranslator]: Completed pre-run [2024-10-11 11:26:14,689 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-29.i[915,928] [2024-10-11 11:26:14,715 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 11:26:14,738 INFO L204 MainTranslator]: Completed translation [2024-10-11 11:26:14,738 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14 WrapperNode [2024-10-11 11:26:14,739 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-11 11:26:14,740 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-11 11:26:14,741 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-11 11:26:14,741 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-11 11:26:14,748 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,763 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,794 INFO L138 Inliner]: procedures = 27, calls = 23, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 88 [2024-10-11 11:26:14,794 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-11 11:26:14,796 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-11 11:26:14,796 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-11 11:26:14,796 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-11 11:26:14,806 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,807 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,810 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,829 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-10-11 11:26:14,830 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,830 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,842 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,849 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,850 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,851 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,858 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-11 11:26:14,863 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-11 11:26:14,863 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-11 11:26:14,866 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-11 11:26:14,867 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (1/1) ... [2024-10-11 11:26:14,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 11:26:14,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 11:26:14,906 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-10-11 11:26:14,909 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-10-11 11:26:14,960 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-11 11:26:14,960 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2024-10-11 11:26:14,960 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2024-10-11 11:26:14,960 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2024-10-11 11:26:14,962 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-11 11:26:14,962 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-11 11:26:15,050 INFO L238 CfgBuilder]: Building ICFG [2024-10-11 11:26:15,052 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-11 11:26:24,438 INFO L? ?]: Removed 11 outVars from TransFormulas that were not future-live. [2024-10-11 11:26:24,438 INFO L287 CfgBuilder]: Performing block encoding [2024-10-11 11:26:24,493 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-11 11:26:24,495 INFO L314 CfgBuilder]: Removed 1 assume(true) statements. [2024-10-11 11:26:24,495 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 11:26:24 BoogieIcfgContainer [2024-10-11 11:26:24,495 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-11 11:26:24,498 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-11 11:26:24,498 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-11 11:26:24,502 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-11 11:26:24,503 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.10 11:26:14" (1/3) ... [2024-10-11 11:26:24,504 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@74dac730 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 11:26:24, skipping insertion in model container [2024-10-11 11:26:24,504 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 11:26:14" (2/3) ... [2024-10-11 11:26:24,505 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@74dac730 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 11:26:24, skipping insertion in model container [2024-10-11 11:26:24,505 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 11:26:24" (3/3) ... [2024-10-11 11:26:24,507 INFO L112 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-29.i [2024-10-11 11:26:24,526 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-11 11:26:24,527 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-10-11 11:26:24,577 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 11:26:24,584 INFO L333 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, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, 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, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@1db19d70, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 11:26:24,586 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-10-11 11:26:24,591 INFO L276 IsEmpty]: Start isEmpty. Operand has 36 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 24 states have internal predecessors, (34), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2024-10-11 11:26:24,601 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2024-10-11 11:26:24,601 INFO L207 NwaCegarLoop]: Found error trace [2024-10-11 11:26:24,602 INFO L215 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 11:26:24,603 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-11 11:26:24,611 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 11:26:24,611 INFO L85 PathProgramCache]: Analyzing trace with hash -1313351656, now seen corresponding path program 1 times [2024-10-11 11:26:24,627 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-10-11 11:26:24,628 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [4091942] [2024-10-11 11:26:24,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 11:26:24,629 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-10-11 11:26:24,629 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat [2024-10-11 11:26:24,633 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-10-11 11:26:24,634 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2024-10-11 11:26:24,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 11:26:24,972 INFO L255 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-10-11 11:26:24,982 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 11:26:27,053 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 6 proven. 84 refuted. 0 times theorem prover too weak. 90 trivial. 0 not checked. [2024-10-11 11:26:27,054 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 11:26:27,736 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 6 proven. 21 refuted. 0 times theorem prover too weak. 153 trivial. 0 not checked. [2024-10-11 11:26:27,737 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-10-11 11:26:27,737 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [4091942] [2024-10-11 11:26:27,738 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [4091942] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 11:26:27,738 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-10-11 11:26:27,738 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 11 [2024-10-11 11:26:27,740 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1394977794] [2024-10-11 11:26:27,741 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-10-11 11:26:27,745 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2024-10-11 11:26:27,745 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-10-11 11:26:27,770 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-10-11 11:26:27,771 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2024-10-11 11:26:27,774 INFO L87 Difference]: Start difference. First operand has 36 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 24 states have internal predecessors, (34), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 11 states have internal predecessors, (42), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) [2024-10-11 11:26:30,777 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.48s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:34,051 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.21s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:36,000 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.57s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:39,624 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.95s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:41,154 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.35s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:44,080 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.79s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2024-10-11 11:26:44,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-11 11:26:44,593 INFO L93 Difference]: Finished difference Result 116 states and 181 transitions. [2024-10-11 11:26:44,595 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-10-11 11:26:44,597 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 11 states have internal predecessors, (42), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) Word has length 65 [2024-10-11 11:26:44,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2024-10-11 11:26:44,608 INFO L225 Difference]: With dead ends: 116 [2024-10-11 11:26:44,608 INFO L226 Difference]: Without dead ends: 75 [2024-10-11 11:26:44,612 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 122 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=185, Invalid=321, Unknown=0, NotChecked=0, Total=506 [2024-10-11 11:26:44,619 INFO L432 NwaCegarLoop]: 30 mSDtfsCounter, 158 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 15.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 159 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 241 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 15.6s IncrementalHoareTripleChecker+Time [2024-10-11 11:26:44,621 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [159 Valid, 94 Invalid, 241 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 185 Invalid, 0 Unknown, 0 Unchecked, 15.6s Time] [2024-10-11 11:26:44,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2024-10-11 11:26:44,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 51. [2024-10-11 11:26:44,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2024-10-11 11:26:44,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 68 transitions. [2024-10-11 11:26:44,663 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 68 transitions. Word has length 65 [2024-10-11 11:26:44,663 INFO L84 Accepts]: Finished accepts. word is rejected. [2024-10-11 11:26:44,663 INFO L471 AbstractCegarLoop]: Abstraction has 51 states and 68 transitions. [2024-10-11 11:26:44,664 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 11 states have internal predecessors, (42), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) [2024-10-11 11:26:44,664 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2024-10-11 11:26:44,666 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2024-10-11 11:26:44,666 INFO L207 NwaCegarLoop]: Found error trace [2024-10-11 11:26:44,666 INFO L215 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 11:26:44,682 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2024-10-11 11:26:44,867 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-10-11 11:26:44,868 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-10-11 11:26:44,868 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 11:26:44,868 INFO L85 PathProgramCache]: Analyzing trace with hash -2073893193, now seen corresponding path program 1 times [2024-10-11 11:26:44,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-10-11 11:26:44,869 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [515451224] [2024-10-11 11:26:44,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 11:26:44,869 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-10-11 11:26:44,870 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat [2024-10-11 11:26:44,871 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-10-11 11:26:44,872 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2024-10-11 11:26:45,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 11:26:45,151 INFO L255 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 15 conjuncts are in the unsatisfiable core [2024-10-11 11:26:45,156 INFO L278 TraceCheckSpWp]: Computing forward predicates...