You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In general, algorithms and environments are given by sequences of kernels that depend on the history of the interaction.
We introduce several Prop-valued classes for properties of those kernels.
New classes:
IsDeterministicAlg. The kernels describing the algorithm are deterministic. We add definitions for functions such that the kernels are the deterministic kernels of those functions. actionZero at time 0 and nextAction afterwards.
IsDeterministicEnv. A similar class for environments. With definitions feedbackFunZero and feedbackFun
IsObliviousEnv. The kernel of the environment depends only on the latest action of the agent and not the prior history. We define a kernel feedbackCondAction : Kernel α R that depends only on the action.
New constructors for environments:
obliviousEnv. Given a sequence of Kernel α R, build an environment that satisfies IsObliviousEnv. The definition of stationaryEnv is changed to be obliviousEnv for a constant sequence.
onlineEvalEnv: build an oblivious and deterministic environment from a sequence of functions α → R
(In CI for the last commit we can see a very nice feature of our verso tutorials: their CI now fails and I need to reflect the code changes in the tutorials. This is great and will help keep the documentation up to date.)
I find these additions very elegant and complete. I'm wondering if the deterministic kernels in IsDeterministicAlg and IsDeterministicEnv should implement IsDeterministic of leanprover-community/mathlib4#38211 or if it's far-fetched.
Yes, I intend to use your IsDeterministic definition once it reaches our repository (and I linked to it in the issue that this closes). But first it needs to be merged to Mathlib and then we need to update Mathlib.
(In CI for the last commit we can see a very nice feature of our verso tutorials: their CI now fails and I need to reflect the code changes in the tutorials. This is great and will help keep the documentation up to date.)
Indeed whenever you're using anchor you need the code in the doc and the files to be "str"-equal. However, we could change the way the doc is handled for avoiding code duplication. For example in my repo KernelHom, the verso doc does not use a single anchor by using a meta program I found in a repo of Yuma Mizuno. This main advantage is that you can directly reference names of your project in the verso doc that will be displayed in a similar way than when using anchor (see Examples.lean).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
closes #97
In general, algorithms and environments are given by sequences of kernels that depend on the history of the interaction.
We introduce several Prop-valued classes for properties of those kernels.
New classes:
IsDeterministicAlg. The kernels describing the algorithm are deterministic. We add definitions for functions such that the kernels are the deterministic kernels of those functions.actionZeroat time 0 andnextActionafterwards.IsDeterministicEnv. A similar class for environments. With definitionsfeedbackFunZeroandfeedbackFunIsObliviousEnv. The kernel of the environment depends only on the latest action of the agent and not the prior history. We define a kernelfeedbackCondAction : Kernel α Rthat depends only on the action.New constructors for environments:
obliviousEnv. Given a sequence ofKernel α R, build an environment that satisfiesIsObliviousEnv. The definition ofstationaryEnvis changed to beobliviousEnvfor a constant sequence.onlineEvalEnv: build an oblivious and deterministic environment from a sequence of functionsα → RevalEnv, taken from Add theevalEnvenvironment #98 :oblineEvalEnvfor a constant sequenceco-authored by: Gaëtan Serré @gaetanserre