unicode_fol_kit.check_logical_entailment_vampire¶
- unicode_fol_kit.check_logical_entailment_vampire(premises, conclusion, vampire_path, timeout=30, use_wsl=False)[source]¶
Return whether
premisesentailconclusion, decided by Vampire.- Parameters:
premises (List[Node]) – a list of classical FOL premise formulas.
conclusion (Node) – the classical FOL conclusion formula.
vampire_path (str) – path to a Vampire executable (e.g.
"/usr/bin/vampire"). Withuse_wsl=Truethis is the command/path INSIDE WSL — e.g."vampire"if it is on the WSLPATH, or"/home/me/vampire".timeout (int) – seconds to allow the Vampire process before giving up and returning
False(default 30).use_wsl (bool) – when True, run Vampire inside WSL via
wsl.exeand translate the temp-file path to its/mnt/...form, so a Windows host can drive a Linux Vampire installed in WSL.
- Returns:
Trueiff Vampire proves the conclusion follows from the premises. Note that every premise and the conclusion must be a closed sentence: Vampire rejects formulas with unquantified (free) variables, and such a rejection is reported asFalse(no proof), not raised.- Raises:
FileNotFoundError –
vampire_pathdoes not point to an executable (or, withuse_wsl=True,wsl.exeitself is not found).NotImplementedError – a formula is outside the first-order fragment (modal / second-order / Łukasiewicz / lambda), surfaced by
to_tptp.
- Return type: