X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b05a0ed4f5fb7b81f96777af37b8f7fc5a4bf160..372f92e67e3eb3ca800b6d9bcf214594cf3b6798:/include/simgrid/modelchecker.h diff --git a/include/simgrid/modelchecker.h b/include/simgrid/modelchecker.h index 3d846c2a92..09566a3b82 100644 --- a/include/simgrid/modelchecker.h +++ b/include/simgrid/modelchecker.h @@ -1,33 +1,28 @@ /* simgrid/modelchecker.h - Formal Verification made possible in SimGrid */ -/* Copyright (c) 2008-2012. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2008-2023. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include /* HAVE_MC ? */ -#include -#include "xbt/automaton.h" - #ifndef SIMGRID_MODELCHECKER_H #define SIMGRID_MODELCHECKER_H -#ifdef HAVE_MC - -extern int _surf_do_model_check; -#define MC_IS_ENABLED _surf_do_model_check - -XBT_PUBLIC(void) MC_assert(int); -XBT_PUBLIC(int) MC_random(int min, int max); -XBT_PUBLIC(void) MC_automaton_new_propositional_symbol(const char* id, void* fct); +#include /* size_t */ +#include -#else +SG_BEGIN_DECL -#define MC_IS_ENABLED 0 -#define MC_assert(a) xbt_assert(a) +/** Explore every branches where that function returns a value between min and max (inclusive) */ +XBT_PUBLIC int MC_random(int min, int max); -#endif +/** Assertion for the model-checker: Defines a safety property to verify */ +XBT_PUBLIC void MC_assert(int); +/** Check whether the model-checker is currently active, ie if this process was started with simgrid-mc. + * It is off in simulation or when replaying MC traces (see MC_record_replay_is_active()) */ +XBT_PUBLIC int MC_is_active(); +SG_END_DECL #endif /* SIMGRID_MODELCHECKER_H */