úÎ!#C‹_      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^Safe_`abcdef(c) Reed Mullanix 2019 BSD-stylereedmullanix@gmail.comSafe78;=>?@ACHPVX_DrefineryGenerates a "hole" of type ext0, which should represent an incomplete extract.      (c) Reed Mullanix 2019 BSD-stylereedmullanix@gmail.comNone78;=>?@ACHMPVX_a.refinery3Create a subgoal, and return the resulting extract./refineryA /5 is a monad transformer for creating inference rules.2refineryA 2U is a monad transformer that performs proof refinement. The type variables signifiy:jdgJ - The goal type. This is the thing we are trying to construct a proof of.extK - The extract type. This is what we will recieve after running the tactic.err - The error type. We can use g/ to abort the computation with a provided errors - The state type.m - The base monad.a$ - The return value. This to make 2 a monad, and will always be '()'5refinery'Helper function for producing a tactic.6refinery,Helper function for deconstructing a tactic.7refinery6Map the unwrapped computation using the given function -./01234567 234567-./01(c) Reed Mullanix 2019 BSD-stylereedmullanix@gmail.comNone8=>?@ACHMPV_¼Wrefinery.Tries to run a tactic, backtracking on failureXrefinery'Runs a tactic repeatedly until it failsYrefineryGet the current goal]refinery]Runs a tactic, producing a list of possible extracts, along with a list of unsolved subgoals.^refinery%Turn an inference rule into a tactic.-./2UVWXYZ[\]^2]UVWXZ[Y\-./^V3h      !"#$%&'()*+,-./012345667889:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno'refinery-0.2.0.0-2c8JRgW6Bhs8bC5T1tIgRKRefinery.TacticRefinery.ProofStateRefinery.Tactic.InternalPaths_refinery%logict-0.7.0.3-KdowZV50xssAEoBUUO21eBControl.Monad.Logic.Classlnotonceifte>>- interleavemsplit MonadLogic MonadExtracthole ProofStateTSubgoalEffectStatefulAlt InterleaveEmptyFailureAxiom applyContproofs accumEitheraxiomsubgoals mapExtract mapExtract'$fMonadStatesProofStateT$fMonadReaderrProofStateT$fMonadErrorerrProofStateT$fMonadCatchProofStateT$fMonadThrowProofStateT$fMonadIOProofStateT$fMonadPlusProofStateT$fAlternativeProofStateT$fMonadTransProofStateT$fMonadProofStateT$fMFunctorTYPEProofStateT$fApplicativeProofStateT$fFunctorProofStateT$fShowProofStateT$fMonadExtractextExceptT$fMonadExtractextWriterT$fMonadExtractextWriterT0$fMonadExtractextStateT$fMonadExtractextReaderT$fGenericProofStateT MonadRulesubgoalRuleTunRuleTTacticT unTacticTtactic proofState mapTacticT$fMonadStatesTacticT$fMonadTransTacticT $fShowTacticT$fMonadErrorerrRuleT$fMonadIORuleT$fMFunctorTYPERuleT$fMonadTransRuleT$fMonadReaderrRuleT$fMonadStatesRuleT $fMonadRuleT$fApplicativeRuleT$fFunctorRuleT $fShowRuleT$fMonadRulejdgextExceptT$fMonadRulejdgextStateT$fMonadRulejdgextReaderT$fMonadRulejdgextRuleT$fFunctorTacticT$fApplicativeTacticT$fAlternativeTacticT$fMonadTacticT$fMonadPlusTacticT$fMonadReaderTacticT$fMonadErrorTacticT$fMonadIOTacticT$fMonadThrowTacticT$fMonadCatchTacticT$fGenericTacticT$fGenericRuleT<@><%>trymany_goalchoiceprogressfocus runTacticTruleversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName mtl-2.2.2Control.Monad.Error.Class throwError