A nyelv a két féle helyességbizonyítási eszközt támogat:
Az előfeltételt a "require" kulcssó után kell megadni. Az itt felsorolt feltételeknek igaznak kell lennie a metódusba való belépéskor. Például itt megkötéseket tehetünk a metódus paramétereire. Az utófeltételnél megadott feltételek azelőtt értékelődnek ki, mielőtt a metódus befejezőne és a vezérlés az őt hívó blokkba térne vissza. Ezeket a kikőtéseket az "ensure" kulcsó után tehetjük meg. Az elő és utófeltételeket egy osztály metódusánál lehet alkalmazni.
Az invriánsnak megfelelő feltételeket az "invariants" szó után lehet megadni. Ezeknek a kikötéseknek mindig igaznak kell lenniük. Az invaránsak két féle változata van. Ez egyik a "public invariants", ami az össze publikus metódus végén le lesz ellenőrizve (az utófeltétel után). A másik válzozat a "private invariants", ami az összes metódus végén (publikus vagy privát) le lesz ellenőrizve.