Isabelle/HOL,implementedwiththe"proof assistant development framework"Isabelle,isthemostpopularproofassistantfortheHOLlogic.TheotherimplementationsofHOLcanbeconsideredequivalentforpurposesofthediscussionhere.
Isabelle/HOLandCoqbothsupportcodingnewproofmanipulationsinMLinwaysthatcannotleadtotheacceptanceofinvalidproofs.Additionally,Coqincludesadomain-specificlanguageforcodingdecisionproceduresinnormalCoqsourcecode,withnoneedtobreakoutintoML.ThislanguageiscalledLtac,andIthinkofitastheunsungherooftheproofassistantworld.NotonlydoesLtacpreventyoufrommakingfatalmistakes,italsoincludesanumberofnovelprogrammingconstructswhichcombinetomakea"proof by decision procedure"styleverypleasant.Wewillmeetthesefeaturesinthechapterstocome.