This commit is contained in:
c-cube 2023-02-24 02:08:35 +00:00
parent 37e82adeeb
commit 97dab9ef8c
330 changed files with 1197 additions and 744 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,461 @@
/*!
Highlight.js v11.7.0 (git: 82688fad18)
(c) 2006-2022 undefined and other contributors
License: BSD-3-Clause
*/
var hljs=function(){"use strict";var e={exports:{}};function t(e){
return e instanceof Map?e.clear=e.delete=e.set=()=>{
throw Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=()=>{
throw Error("set is read-only")
}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach((n=>{var i=e[n]
;"object"!=typeof i||Object.isFrozen(i)||t(i)})),e}
e.exports=t,e.exports.default=t;class n{constructor(e){
void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}
ignoreMatch(){this.isMatchIgnored=!0}}function i(e){
return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")
}function r(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t]
;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}
const s=e=>!!e.scope||e.sublanguage&&e.language;class o{constructor(e,t){
this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){
this.buffer+=i(e)}openNode(e){if(!s(e))return;let t=""
;t=e.sublanguage?"language-"+e.language:((e,{prefix:t})=>{if(e.includes(".")){
const n=e.split(".")
;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ")
}return`${t}${e}`})(e.scope,{prefix:this.classPrefix}),this.span(t)}
closeNode(e){s(e)&&(this.buffer+="</span>")}value(){return this.buffer}span(e){
this.buffer+=`<span class="${e}">`}}const a=(e={})=>{const t={children:[]}
;return Object.assign(t,e),t};class c{constructor(){
this.rootNode=a(),this.stack=[this.rootNode]}get top(){
return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){
this.top.children.push(e)}openNode(e){const t=a({scope:e})
;this.add(t),this.stack.push(t)}closeNode(){
if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){
for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}
walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){
return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),
t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){
"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{
c._collapse(e)})))}}class l extends c{constructor(e){super(),this.options=e}
addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}
addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root
;n.sublanguage=!0,n.language=t,this.add(n)}toHTML(){
return new o(this,this.options).value()}finalize(){return!0}}function g(e){
return e?"string"==typeof e?e:e.source:null}function d(e){return p("(?=",e,")")}
function u(e){return p("(?:",e,")*")}function h(e){return p("(?:",e,")?")}
function p(...e){return e.map((e=>g(e))).join("")}function f(...e){const t=(e=>{
const t=e[e.length-1]
;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}
})(e);return"("+(t.capture?"":"?:")+e.map((e=>g(e))).join("|")+")"}
function b(e){return RegExp(e.toString()+"|").exec("").length-1}
const m=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./
;function E(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n
;let i=g(e),r="";for(;i.length>0;){const e=m.exec(i);if(!e){r+=i;break}
r+=i.substring(0,e.index),
i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+(Number(e[1])+t):(r+=e[0],
"("===e[0]&&n++)}return r})).map((e=>`(${e})`)).join(t)}
const x="[a-zA-Z]\\w*",w="[a-zA-Z_]\\w*",y="\\b\\d+(\\.\\d+)?",_="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",O="\\b(0b[01]+)",v={
begin:"\\\\[\\s\\S]",relevance:0},N={scope:"string",begin:"'",end:"'",
illegal:"\\n",contains:[v]},k={scope:"string",begin:'"',end:'"',illegal:"\\n",
contains:[v]},M=(e,t,n={})=>{const i=r({scope:"comment",begin:e,end:t,
contains:[]},n);i.contains.push({scope:"doctag",
begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",
end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0})
;const s=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/)
;return i.contains.push({begin:p(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i
},S=M("//","$"),R=M("/\\*","\\*/"),j=M("#","$");var A=Object.freeze({
__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:x,UNDERSCORE_IDENT_RE:w,
NUMBER_RE:y,C_NUMBER_RE:_,BINARY_NUMBER_RE:O,
RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",
SHEBANG:(e={})=>{const t=/^#![ ]*\//
;return e.binary&&(e.begin=p(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t,
end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},
BACKSLASH_ESCAPE:v,APOS_STRING_MODE:N,QUOTE_STRING_MODE:k,PHRASAL_WORDS_MODE:{
begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/
},COMMENT:M,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:R,HASH_COMMENT_MODE:j,
NUMBER_MODE:{scope:"number",begin:y,relevance:0},C_NUMBER_MODE:{scope:"number",
begin:_,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:O,relevance:0},
REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,
end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0,
contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:x,relevance:0},
UNDERSCORE_TITLE_MODE:{scope:"title",begin:w,relevance:0},METHOD_GUARD:{
begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{
"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{
t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function I(e,t){
"."===e.input[e.index-1]&&t.ignoreMatch()}function T(e,t){
void 0!==e.className&&(e.scope=e.className,delete e.className)}function L(e,t){
t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",
e.__beforeBegin=I,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,
void 0===e.relevance&&(e.relevance=0))}function B(e,t){
Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function D(e,t){
if(e.match){
if(e.begin||e.end)throw Error("begin & end are not supported with match")
;e.begin=e.match,delete e.match}}function H(e,t){
void 0===e.relevance&&(e.relevance=1)}const P=(e,t)=>{if(!e.beforeMatch)return
;if(e.starts)throw Error("beforeMatch cannot be used with starts")
;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t]
})),e.keywords=n.keywords,e.begin=p(n.beforeMatch,d(n.begin)),e.starts={
relevance:0,contains:[Object.assign(n,{endsParent:!0})]
},e.relevance=0,delete n.beforeMatch
},C=["of","and","for","in","not","or","if","then","parent","list","value"]
;function $(e,t,n="keyword"){const i=Object.create(null)
;return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((n=>{
Object.assign(i,$(e[n],t,n))})),i;function r(e,n){
t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|")
;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){
return t?Number(t):(e=>C.includes(e.toLowerCase()))(e)?0:1}const z={},K=e=>{
console.error(e)},W=(e,...t)=>{console.log("WARN: "+e,...t)},X=(e,t)=>{
z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0)
},G=Error();function Z(e,t,{key:n}){let i=0;const r=e[n],s={},o={}
;for(let e=1;e<=t.length;e++)o[e+i]=r[e],s[e+i]=!0,i+=b(t[e-1])
;e[n]=o,e[n]._emit=s,e[n]._multi=!0}function F(e){(e=>{
e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,
delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={
_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope
}),(e=>{if(Array.isArray(e.begin)){
if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),
G
;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"),
G;Z(e,e.begin,{key:"beginScope"}),e.begin=E(e.begin,{joinWith:""})}})(e),(e=>{
if(Array.isArray(e.end)){
if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"),
G
;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"),
G;Z(e,e.end,{key:"endScope"}),e.end=E(e.end,{joinWith:""})}})(e)}function V(e){
function t(t,n){
return RegExp(g(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))
}class n{constructor(){
this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}
addRule(e,t){
t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),
this.matchAt+=b(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null)
;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(E(e,{joinWith:"|"
}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex
;const t=this.matcherRe.exec(e);if(!t)return null
;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n]
;return t.splice(0,n),Object.assign(t,i)}}class i{constructor(){
this.rules=[],this.multiRegexes=[],
this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){
if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n
;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))),
t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){
return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){
this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){
const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex
;let n=t.exec(e)
;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{
const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}
return n&&(this.regexIndex+=n.position+1,
this.regexIndex===this.count&&this.considerAll()),n}}
if(e.compilerExtensions||(e.compilerExtensions=[]),
e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.")
;return e.classNameAliases=r(e.classNameAliases||{}),function n(s,o){const a=s
;if(s.isCompiled)return a
;[T,D,F,P].forEach((e=>e(s,o))),e.compilerExtensions.forEach((e=>e(s,o))),
s.__beforeBegin=null,[L,B,H].forEach((e=>e(s,o))),s.isCompiled=!0;let c=null
;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),
c=s.keywords.$pattern,
delete s.keywords.$pattern),c=c||/\w+/,s.keywords&&(s.keywords=$(s.keywords,e.case_insensitive)),
a.keywordPatternRe=t(c,!0),
o&&(s.begin||(s.begin=/\B|\b/),a.beginRe=t(a.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),
s.end&&(a.endRe=t(a.end)),
a.terminatorEnd=g(a.end)||"",s.endsWithParent&&o.terminatorEnd&&(a.terminatorEnd+=(s.end?"|":"")+o.terminatorEnd)),
s.illegal&&(a.illegalRe=t(s.illegal)),
s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>r(e,{
variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?r(e,{
starts:e.starts?r(e.starts):null
}):Object.isFrozen(e)?r(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{n(e,a)
})),s.starts&&n(s.starts,o),a.matcher=(e=>{const t=new i
;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin"
}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"
}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){
return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{
constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}
const Y=i,Q=r,ee=Symbol("nomatch");var te=(t=>{
const i=Object.create(null),r=Object.create(null),s=[];let o=!0
;const a="Could not find the language '{}', did you forget to load/include a language module?",c={
disableAutodetect:!0,name:"Plain text",contains:[]};let g={
ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,
languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",
cssSelector:"pre code",languages:null,__emitter:l};function b(e){
return g.noHighlightRe.test(e)}function m(e,t,n){let i="",r=""
;"object"==typeof t?(i=e,
n=t.ignoreIllegals,r=t.language):(X("10.7.0","highlight(lang, code, ...args) has been deprecated."),
X("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),
r=e,i=t),void 0===n&&(n=!0);const s={code:i,language:r};k("before:highlight",s)
;const o=s.result?s.result:E(s.language,s.code,n)
;return o.code=s.code,k("after:highlight",o),o}function E(e,t,r,s){
const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(S)
;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(S),n=""
;for(;t;){n+=S.substring(e,t.index)
;const r=y.case_insensitive?t[0].toLowerCase():t[0],s=(i=r,N.keywords[i]);if(s){
const[e,i]=s
;if(M.addText(n),n="",c[r]=(c[r]||0)+1,c[r]<=7&&(R+=i),e.startsWith("_"))n+=t[0];else{
const n=y.classNameAliases[e]||e;M.addKeyword(t[0],n)}}else n+=t[0]
;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(S)}var i
;n+=S.substring(e),M.addText(n)}function d(){null!=N.subLanguage?(()=>{
if(""===S)return;let e=null;if("string"==typeof N.subLanguage){
if(!i[N.subLanguage])return void M.addText(S)
;e=E(N.subLanguage,S,!0,k[N.subLanguage]),k[N.subLanguage]=e._top
}else e=x(S,N.subLanguage.length?N.subLanguage:null)
;N.relevance>0&&(R+=e.relevance),M.addSublanguage(e._emitter,e.language)
})():l(),S=""}function u(e,t){let n=1;const i=t.length-1;for(;n<=i;){
if(!e._emit[n]){n++;continue}const i=y.classNameAliases[e[n]]||e[n],r=t[n]
;i?M.addKeyword(r,i):(S=r,l(),S=""),n++}}function h(e,t){
return e.scope&&"string"==typeof e.scope&&M.openNode(y.classNameAliases[e.scope]||e.scope),
e.beginScope&&(e.beginScope._wrap?(M.addKeyword(S,y.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),
S=""):e.beginScope._multi&&(u(e.beginScope,t),S="")),N=Object.create(e,{parent:{
value:N}}),N}function p(e,t,i){let r=((e,t)=>{const n=e&&e.exec(t)
;return n&&0===n.index})(e.endRe,i);if(r){if(e["on:end"]){const i=new n(e)
;e["on:end"](t,i),i.isMatchIgnored&&(r=!1)}if(r){
for(;e.endsParent&&e.parent;)e=e.parent;return e}}
if(e.endsWithParent)return p(e.parent,t,i)}function f(e){
return 0===N.matcher.regexIndex?(S+=e[0],1):(I=!0,0)}function b(e){
const n=e[0],i=t.substring(e.index),r=p(N,e,i);if(!r)return ee;const s=N
;N.endScope&&N.endScope._wrap?(d(),
M.addKeyword(n,N.endScope._wrap)):N.endScope&&N.endScope._multi?(d(),
u(N.endScope,e)):s.skip?S+=n:(s.returnEnd||s.excludeEnd||(S+=n),
d(),s.excludeEnd&&(S=n));do{
N.scope&&M.closeNode(),N.skip||N.subLanguage||(R+=N.relevance),N=N.parent
}while(N!==r.parent);return r.starts&&h(r.starts,e),s.returnEnd?0:n.length}
let m={};function w(i,s){const a=s&&s[0];if(S+=i,null==a)return d(),0
;if("begin"===m.type&&"end"===s.type&&m.index===s.index&&""===a){
if(S+=t.slice(s.index,s.index+1),!o){const t=Error(`0 width match regex (${e})`)
;throw t.languageName=e,t.badRule=m.rule,t}return 1}
if(m=s,"begin"===s.type)return(e=>{
const t=e[0],i=e.rule,r=new n(i),s=[i.__beforeBegin,i["on:begin"]]
;for(const n of s)if(n&&(n(e,r),r.isMatchIgnored))return f(t)
;return i.skip?S+=t:(i.excludeBegin&&(S+=t),
d(),i.returnBegin||i.excludeBegin||(S=t)),h(i,e),i.returnBegin?0:t.length})(s)
;if("illegal"===s.type&&!r){
const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"<unnamed>")+'"')
;throw e.mode=N,e}if("end"===s.type){const e=b(s);if(e!==ee)return e}
if("illegal"===s.type&&""===a)return 1
;if(A>1e5&&A>3*s.index)throw Error("potential infinite loop, way more iterations than matches")
;return S+=a,a.length}const y=O(e)
;if(!y)throw K(a.replace("{}",e)),Error('Unknown language: "'+e+'"')
;const _=V(y);let v="",N=s||_;const k={},M=new g.__emitter(g);(()=>{const e=[]
;for(let t=N;t!==y;t=t.parent)t.scope&&e.unshift(t.scope)
;e.forEach((e=>M.openNode(e)))})();let S="",R=0,j=0,A=0,I=!1;try{
for(N.matcher.considerAll();;){
A++,I?I=!1:N.matcher.considerAll(),N.matcher.lastIndex=j
;const e=N.matcher.exec(t);if(!e)break;const n=w(t.substring(j,e.index),e)
;j=e.index+n}
return w(t.substring(j)),M.closeAllNodes(),M.finalize(),v=M.toHTML(),{
language:e,value:v,relevance:R,illegal:!1,_emitter:M,_top:N}}catch(n){
if(n.message&&n.message.includes("Illegal"))return{language:e,value:Y(t),
illegal:!0,relevance:0,_illegalBy:{message:n.message,index:j,
context:t.slice(j-100,j+100),mode:n.mode,resultSoFar:v},_emitter:M};if(o)return{
language:e,value:Y(t),illegal:!1,relevance:0,errorRaised:n,_emitter:M,_top:N}
;throw n}}function x(e,t){t=t||g.languages||Object.keys(i);const n=(e=>{
const t={value:Y(e),illegal:!1,relevance:0,_top:c,_emitter:new g.__emitter(g)}
;return t._emitter.addText(e),t})(e),r=t.filter(O).filter(N).map((t=>E(t,e,!1)))
;r.unshift(n);const s=r.sort(((e,t)=>{
if(e.relevance!==t.relevance)return t.relevance-e.relevance
;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1
;if(O(t.language).supersetOf===e.language)return-1}return 0})),[o,a]=s,l=o
;return l.secondBest=a,l}function w(e){let t=null;const n=(e=>{
let t=e.className+" ";t+=e.parentNode?e.parentNode.className:""
;const n=g.languageDetectRe.exec(t);if(n){const t=O(n[1])
;return t||(W(a.replace("{}",n[1])),
W("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}
return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return
;if(k("before:highlightElement",{el:e,language:n
}),e.children.length>0&&(g.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),
console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),
console.warn("The element with unescaped HTML:"),
console.warn(e)),g.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML)
;t=e;const i=t.textContent,s=n?m(i,{language:n,ignoreIllegals:!0}):x(i)
;e.innerHTML=s.value,((e,t,n)=>{const i=t&&r[t]||n
;e.classList.add("hljs"),e.classList.add("language-"+i)
})(e,n,s.language),e.result={language:s.language,re:s.relevance,
relevance:s.relevance},s.secondBest&&(e.secondBest={
language:s.secondBest.language,relevance:s.secondBest.relevance
}),k("after:highlightElement",{el:e,result:s,text:i})}let y=!1;function _(){
"loading"!==document.readyState?document.querySelectorAll(g.cssSelector).forEach(w):y=!0
}function O(e){return e=(e||"").toLowerCase(),i[e]||i[r[e]]}
function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{
r[e.toLowerCase()]=t}))}function N(e){const t=O(e)
;return t&&!t.disableAutodetect}function k(e,t){const n=e;s.forEach((e=>{
e[n]&&e[n](t)}))}
"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{
y&&_()}),!1),Object.assign(t,{highlight:m,highlightAuto:x,highlightAll:_,
highlightElement:w,
highlightBlock:e=>(X("10.7.0","highlightBlock will be removed entirely in v12.0"),
X("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{g=Q(g,e)},
initHighlighting:()=>{
_(),X("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},
initHighlightingOnLoad:()=>{
_(),X("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")
},registerLanguage:(e,n)=>{let r=null;try{r=n(t)}catch(t){
if(K("Language definition for '{}' could not be registered.".replace("{}",e)),
!o)throw t;K(t),r=c}
r.name||(r.name=e),i[e]=r,r.rawDefinition=n.bind(null,t),r.aliases&&v(r.aliases,{
languageName:e})},unregisterLanguage:e=>{delete i[e]
;for(const t of Object.keys(r))r[t]===e&&delete r[t]},
listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v,
autoDetection:N,inherit:Q,addPlugin:e=>{(e=>{
e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{
e["before:highlightBlock"](Object.assign({block:t.el},t))
}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{
e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),s.push(e)}
}),t.debugMode=()=>{o=!1},t.safeMode=()=>{o=!0
},t.versionString="11.7.0",t.regex={concat:p,lookahead:d,either:f,optional:h,
anyNumberOfTimes:u};for(const t in A)"object"==typeof A[t]&&e.exports(A[t])
;return Object.assign(t,A),t})({});return te}()
;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `xml` grammar compiled for Highlight.js 11.7.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const a=e.regex,n=a.concat(/[\p{L}_]/u,a.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),s={
className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},t={begin:/\s/,
contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]
},i=e.inherit(t,{begin:/\(/,end:/\)/}),c=e.inherit(e.APOS_STRING_MODE,{
className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),r={
endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",
begin:/[\p{L}0-9._:-]+/u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{
className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[s]},{
begin:/'/,end:/'/,contains:[s]},{begin:/[^\s"'=<>`]+/}]}]}]};return{
name:"HTML, XML",
aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],
case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,
end:/>/,relevance:10,contains:[t,l,c,i,{begin:/\[/,end:/\]/,contains:[{
className:"meta",begin:/<![a-z]/,end:/>/,contains:[t,i,l,c]}]}]
},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,
relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,
relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",
begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[r],starts:{
end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",
begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[r],starts:{
end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{
className:"tag",begin:/<>|<\/>/},{className:"tag",
begin:a.concat(/</,a.lookahead(a.concat(n,a.either(/\/>/,/>/,/\s/)))),
end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:r}]},{
className:"tag",begin:a.concat(/<\//,a.lookahead(a.concat(n,/>/))),contains:[{
className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}
})();hljs.registerLanguage("xml",e)})();/*! `markdown` grammar compiled for Highlight.js 11.7.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={begin:/<\/?[A-Za-z_]/,
end:">",subLanguage:"xml",relevance:0},a={variants:[{begin:/\[.+?\]\[.*?\]/,
relevance:0},{
begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,
relevance:2},{
begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),
relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{
begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/
},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,
returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",
excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",
end:"\\]",excludeBegin:!0,excludeEnd:!0}]},i={className:"strong",contains:[],
variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]
},s={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{
begin:/_(?![_\s])/,end:/_/,relevance:0}]},c=e.inherit(i,{contains:[]
}),t=e.inherit(s,{contains:[]});i.contains.push(t),s.contains.push(c)
;let g=[n,a];return[i,s,c,t].forEach((e=>{e.contains=e.contains.concat(g)
})),g=g.concat(i,s),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{
className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:g},{
begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",
contains:g}]}]},n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",
end:"\\s+",excludeEnd:!0},i,s,{className:"quote",begin:"^>\\s+",contains:g,
end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{
begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{
begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",
contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{
begin:"^[-\\*]{3,}",end:"$"},a,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{
className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{
className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}})()
;hljs.registerLanguage("markdown",e)})();/*! `plaintext` grammar compiled for Highlight.js 11.7.0 */
(()=>{var t=(()=>{"use strict";return t=>({name:"Plain text",
aliases:["text","txt"],disableAutodetect:!0})})()
;hljs.registerLanguage("plaintext",t)})();/*! `ocaml` grammar compiled for Highlight.js 11.7.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"OCaml",aliases:["ml"],
keywords:{$pattern:"[a-z_]\\w*!?",
keyword:"and as assert asr begin class constraint do done downto else end exception external for fun function functor if in include inherit! inherit initializer land lazy let lor lsl lsr lxor match method!|10 method mod module mutable new object of open! open or private rec sig struct then to try type val! val virtual when while with parser value",
built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 string unit in_channel out_channel ref",
literal:"true false"},illegal:/\/\/|>>/,contains:[{className:"literal",
begin:"\\[(\\|\\|)?\\]|\\(\\)",relevance:0},e.COMMENT("\\(\\*","\\*\\)",{
contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{
className:"type",begin:"`[A-Z][\\w']*"},{className:"type",
begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*",relevance:0
},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0
}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",
begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",
relevance:0},{begin:/->/}]})})();hljs.registerLanguage("ocaml",e)})();/*! `python` grammar compiled for Highlight.js 11.7.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],s={
$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,
built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],
literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],
type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]
},t={className:"meta",begin:/^(>>>|\.\.\.) /},r={className:"subst",begin:/\{/,
end:/\}/,keywords:s,illegal:/#/},l={begin:/\{\{/,relevance:0},b={
className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{
begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,
contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{
begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,
contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{
begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,
contains:[e.BACKSLASH_ESCAPE,t,l,r]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,
end:/"""/,contains:[e.BACKSLASH_ESCAPE,t,l,r]},{begin:/([uU]|[rR])'/,end:/'/,
relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{
begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,
end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,
contains:[e.BACKSLASH_ESCAPE,l,r]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,
contains:[e.BACKSLASH_ESCAPE,l,r]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]
},o="[0-9](_?[0-9])*",c=`(\\b(${o}))?\\.(${o})|\\b(${o})\\.`,d="\\b|"+i.join("|"),g={
className:"number",relevance:0,variants:[{
begin:`(\\b(${o})|(${c}))[eE][+-]?(${o})[jJ]?(?=${d})`},{begin:`(${c})[jJ]?`},{
begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{
begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`
},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${o})[jJ](?=${d})`
}]},p={className:"comment",begin:n.lookahead(/# type:/),end:/$/,keywords:s,
contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={
className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,
end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,
contains:["self",t,g,b,e.HASH_COMMENT_MODE]}]};return r.contains=[b,g,t],{
name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:s,
illegal:/(<\/|->|\?)|=>/,contains:[t,g,{begin:/\bself\b/},{beginKeywords:"if",
relevance:0},b,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,a],scope:{
1:"keyword",3:"title.function"},contains:[m]},{variants:[{
match:[/\bclass/,/\s+/,a,/\s*/,/\(\s*/,a,/\s*\)/]},{match:[/\bclass/,/\s+/,a]}],
scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{
className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[g,m,b]}]}}})()
;hljs.registerLanguage("python",e)})();/*! `reasonml` grammar compiled for Highlight.js 11.7.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n="~?[a-z$_][0-9a-zA-Z$_]*",a="`?[A-Z$_][0-9a-zA-Z$_]*",s="("+["||","++","**","+.","*","/","*.","/.","..."].map((e=>e.split("").map((e=>"\\"+e)).join(""))).join("|")+"|\\|>|&&|==|===)",i="\\s+"+s+"\\s+",r={
keyword:"and as asr assert begin class constraint do done downto else end exception external for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new nonrec object of open or private rec sig struct then to try type val virtual when while with",
built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 ref string unit ",
literal:"true false"
},l="\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",t={
className:"number",relevance:0,variants:[{begin:l},{begin:"\\(-"+l+"\\)"}]},c={
className:"operator",relevance:0,begin:s},o=[{className:"identifier",
relevance:0,begin:n},c,t],g=[e.QUOTE_STRING_MODE,c,{className:"module",
begin:"\\b"+a,returnBegin:!0,relevance:0,end:".",contains:[{
className:"identifier",begin:a,relevance:0}]}],b=[{className:"module",
begin:"\\b"+a,returnBegin:!0,end:".",relevance:0,contains:[{
className:"identifier",begin:a,relevance:0}]}],m={className:"function",
relevance:0,keywords:r,variants:[{begin:"\\s(\\(\\.?.*?\\)|"+n+")\\s*=>",
end:"\\s*=>",returnBegin:!0,relevance:0,contains:[{className:"params",
variants:[{begin:n},{
begin:"~?[a-z$_][0-9a-zA-Z$_]*(\\s*:\\s*[a-z$_][0-9a-z$_]*(\\(\\s*('?[a-z$_][0-9a-z$_]*\\s*(,'?[a-z$_][0-9a-z$_]*\\s*)*)?\\))?){0,2}"
},{begin:/\(\s*\)/}]}]},{begin:"\\s\\(\\.?[^;\\|]*\\)\\s*=>",end:"\\s=>",
returnBegin:!0,relevance:0,contains:[{className:"params",relevance:0,variants:[{
begin:n,end:"(,|\\n|\\))",relevance:0,contains:[c,{className:"typing",begin:":",
end:"(,|\\n)",returnBegin:!0,relevance:0,contains:b}]}]}]},{
begin:"\\(\\.\\s"+n+"\\)\\s*=>"}]};g.push(m);const d={className:"constructor",
begin:a+"\\(",end:"\\)",illegal:"\\n",keywords:r,
contains:[e.QUOTE_STRING_MODE,c,{className:"params",begin:"\\b"+n}]},u={
className:"pattern-match",begin:"\\|",returnBegin:!0,keywords:r,end:"=>",
relevance:0,contains:[d,c,{relevance:0,className:"constructor",begin:a}]},v={
className:"module-access",keywords:r,returnBegin:!0,variants:[{
begin:"\\b("+a+"\\.)+"+n},{begin:"\\b("+a+"\\.)+\\(",end:"\\)",returnBegin:!0,
contains:[m,{begin:"\\(",end:"\\)",relevance:0,skip:!0}].concat(g)},{
begin:"\\b("+a+"\\.)+\\{",end:/\}/}],contains:g};return b.push(v),{
name:"ReasonML",aliases:["re"],keywords:r,illegal:"(:-|:=|\\$\\{|\\+=)",
contains:[e.COMMENT("/\\*","\\*/",{illegal:"^(#,\\/\\/)"}),{
className:"character",begin:"'(\\\\[^']+|[^'])'",illegal:"\\n",relevance:0
},e.QUOTE_STRING_MODE,{className:"literal",begin:"\\(\\)",relevance:0},{
className:"literal",begin:"\\[\\|",end:"\\|\\]",relevance:0,contains:o},{
className:"literal",begin:"\\[",end:"\\]",relevance:0,contains:o},d,{
className:"operator",begin:i,illegal:"--\x3e",relevance:0
},t,e.C_LINE_COMMENT_MODE,u,m,{className:"module-def",
begin:"\\bmodule\\s+"+n+"\\s+"+a+"\\s+=\\s+\\{",end:/\}/,returnBegin:!0,
keywords:r,relevance:0,contains:[{className:"module",relevance:0,begin:a},{
begin:/\{/,end:/\}/,relevance:0,skip:!0}].concat(g)},v]}}})()
;hljs.registerLanguage("reasonml",e)})();

1
dev/_odoc_support/katex.min.css vendored Normal file

File diff suppressed because one or more lines are too long

1
dev/_odoc_support/katex.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,7 +1,7 @@
@charset "UTF-8";
/* Copyright (c) 2016 The odoc contributors. All rights reserved.
Distributed under the ISC license, see terms at the end of the file.
odoc 2.1.1 */
odoc 2.2.0 */
/* Fonts */
@import url('https://fonts.googleapis.com/css?family=Fira+Mono:400,500');
@ -419,8 +419,8 @@ pre code {
padding: 0.35em 0.5em;
}
.def-doc {
margin-bottom: 10px;
li:not(:last-child) > .def-doc {
margin-bottom: 15px;
}
/* Spacing between items */
@ -428,19 +428,35 @@ div.odoc-spec,.odoc-include {
margin-bottom: 2em;
}
.spec.type .variant {
.spec.type .variant p, .spec.type .record p {
margin: 5px;
}
.spec.type .variant, .spec.type .record {
margin-left: 2ch;
list-style: none;
display: flex;
flex-wrap: wrap;
row-gap: 4px;
}
.spec.type .variant p {
margin: 0;
font-style: italic;
.spec.type .record > code, .spec.type .variant > code {
min-width: 40%;
}
.spec.type .record {
margin-left: 2ch;
.spec.type > ol {
margin-top: 0;
margin-bottom: 0;
}
.spec.type .record p {
margin: 0;
font-style: italic;
.spec.type .record > .def-doc, .spec.type .variant > .def-doc {
min-width:50%;
padding: 0.25em 0.5em;
margin-left: 10%;
border-radius: 3px;
flex-grow:1;
background: var(--main-background);
box-shadow: 2px 2px 4px lightgrey;
}
div.def {
@ -449,11 +465,6 @@ div.def {
padding-left: 2ex;
}
div.def+div.def-doc {
margin-left: 1ex;
margin-top: 2.5px
}
div.def-doc>*:first-child {
margin-top: 0;
}
@ -666,9 +677,8 @@ td.def-doc *:first-child {
/* Mobile adjustements. */
@media only screen and (max-width: 95ex) {
.odoc-content {
margin: auto;
padding: 2em;
body.odoc {
margin: 2em;
}
.odoc-toc {
position: static;
@ -678,6 +688,7 @@ td.def-doc *:first-child {
border: none;
padding: 0.2em 1em;
border-radius: 5px;
margin-bottom: 2em;
}
}

File diff suppressed because one or more lines are too long

View file

@ -2,7 +2,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>index</title>
<link rel="stylesheet" href="./odoc.css"/>
<link rel="stylesheet" href="./_odoc_support/odoc.css"/>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1.0"/>
</head>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Key (sidekick-base.Sidekick_base.Config.Key)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Config</a> &#x00BB; Key</nav><header class="odoc-preamble"><h1>Module <code><span>Config.Key</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a t</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span>unit <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-equal" class="anchored"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Compare two keys that have compatible types</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Key (sidekick-base.Sidekick_base.Config.Key)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Config</a> &#x00BB; Key</nav><header class="odoc-preamble"><h1>Module <code><span>Config.Key</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span>unit <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Compare two keys that have compatible types</p></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Cstor (sidekick-base.Sidekick_base.Data_ty.Cstor)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Data_ty</a> &#x00BB; Cstor</nav><header class="odoc-preamble"><h1>Module <code><span>Data_ty.Cstor</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../index.html#type-cstor">cstor</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-ty_args" class="anchored"><a href="#val-ty_args" class="anchor"></a><code><span><span class="keyword">val</span> ty_args : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Types_/index.html#type-ty">Types_.ty</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-select_idx" class="anchored"><a href="#val-select_idx" class="anchor"></a><code><span><span class="keyword">val</span> select_idx : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="../index.html#type-select">select</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-equal" class="anchored"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-hash" class="anchored"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Cstor (sidekick-base.Sidekick_base.Data_ty.Cstor)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Data_ty</a> &#x00BB; Cstor</nav><header class="odoc-preamble"><h1>Module <code><span>Data_ty.Cstor</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../index.html#type-cstor">cstor</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-ty_args"><a href="#val-ty_args" class="anchor"></a><code><span><span class="keyword">val</span> ty_args : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Types_/index.html#type-ty">Types_.ty</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-select_idx"><a href="#val-select_idx" class="anchor"></a><code><span><span class="keyword">val</span> select_idx : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="../index.html#type-select">select</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-hash"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Select (sidekick-base.Sidekick_base.Data_ty.Select)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Data_ty</a> &#x00BB; Select</nav><header class="odoc-preamble"><h1>Module <code><span>Data_ty.Select</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../index.html#type-select">select</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-equal" class="anchored"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-hash" class="anchored"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Select (sidekick-base.Sidekick_base.Data_ty.Select)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">Data_ty</a> &#x00BB; Select</nav><header class="odoc-preamble"><h1>Module <code><span>Data_ty.Select</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../index.html#type-select">select</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-hash"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Op (sidekick-base.Sidekick_base.LRA_term.Op)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">LRA_term</a> &#x00BB; Op</nav><header class="odoc-preamble"><h1>Module <code><span>LRA_term.Op</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../../../../sidekick/Sidekick_th_lra/index.html#type-op">Sidekick_th_lra.op</a></span><span> = </span></code><table><tr id="type-t.Plus" class="anchored"><td class="def variant constructor"><a href="#type-t.Plus" class="anchor"></a><code><span>| </span><span><span class="constructor">Plus</span></span></code></td></tr><tr id="type-t.Minus" class="anchored"><td class="def variant constructor"><a href="#type-t.Minus" class="anchor"></a><code><span>| </span><span><span class="constructor">Minus</span></span></code></td></tr></table></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-equal" class="anchored"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-hash" class="anchored"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Op (sidekick-base.Sidekick_base.LRA_term.Op)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick-base</a> &#x00BB; <a href="../../index.html">Sidekick_base</a> &#x00BB; <a href="../index.html">LRA_term</a> &#x00BB; Op</nav><header class="odoc-preamble"><h1>Module <code><span>LRA_term.Op</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../../../../sidekick/Sidekick_th_lra/index.html#type-op">Sidekick_th_lra.op</a></span><span> = </span></code><ol><li id="type-t.Plus" class="def variant constructor anchored"><a href="#type-t.Plus" class="anchor"></a><code><span>| </span><span><span class="constructor">Plus</span></span></code></li><li id="type-t.Minus" class="def variant constructor anchored"><a href="#type-t.Minus" class="anchor"></a><code><span>| </span><span><span class="constructor">Minus</span></span></code></li></ol></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html">Sidekick_sigs.EQ_HASH_PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ_HASH_PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html">Sidekick_sigs.EQ</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-EQ/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html">Sidekick_sigs.HASH</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-HASH/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-hash"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../sidekick/Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../sidekick/Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></details></div></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_bool (sidekick-base.Sidekick_base.Th_bool)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_bool</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_bool</span></code></h1><p>Reducing boolean formulas to clauses</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-k_config" class="anchored"><a href="#val-k_config" class="anchor"></a><code><span><span class="keyword">val</span> k_config : <span><span>[ `Dyn <span>| `Static</span> ]</span> <a href="../Config/Key/index.html#type-t">Config.Key.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-theory_static" class="anchored"><a href="#val-theory_static" class="anchor"></a><code><span><span class="keyword">val</span> theory_static : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-theory_dyn" class="anchored"><a href="#val-theory_dyn" class="anchor"></a><code><span><span class="keyword">val</span> theory_dyn : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-theory" class="anchored"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <span><a href="../Config/index.html#type-t">Config.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_bool (sidekick-base.Sidekick_base.Th_bool)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_bool</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_bool</span></code></h1><p>Reducing boolean formulas to clauses</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-k_config"><a href="#val-k_config" class="anchor"></a><code><span><span class="keyword">val</span> k_config : <span><span>[ `Dyn <span>| `Static</span> ]</span> <a href="../Config/Key/index.html#type-t">Config.Key.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-theory_static"><a href="#val-theory_static" class="anchor"></a><code><span><span class="keyword">val</span> theory_static : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-theory_dyn"><a href="#val-theory_dyn" class="anchor"></a><code><span><span class="keyword">val</span> theory_dyn : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-theory"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <span><a href="../Config/index.html#type-t">Config.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_data (sidekick-base.Sidekick_base.Th_data)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_data</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_data</span></code></h1><p>Theory of datatypes</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-arg" class="anchored"><a href="#val-arg" class="anchor"></a><code><span><span class="keyword">val</span> arg : <span>(<span class="keyword">module</span> <a href="../../../sidekick/Sidekick_th_data/module-type-ARG/index.html">Sidekick_th_data.ARG</a>)</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-theory" class="anchored"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../../../sidekick/Sidekick_smt_solver/index.html#type-theory">Sidekick_th_data.SMT.theory</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_data (sidekick-base.Sidekick_base.Th_data)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_data</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_data</span></code></h1><p>Theory of datatypes</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-arg"><a href="#val-arg" class="anchor"></a><code><span><span class="keyword">val</span> arg : <span>(<span class="keyword">module</span> <a href="../../../sidekick/Sidekick_th_data/module-type-ARG/index.html">Sidekick_th_data.ARG</a>)</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-theory"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../../../sidekick/Sidekick_smt_solver/index.html#type-theory">Sidekick_th_data.SMT.theory</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_lra (sidekick-base.Sidekick_base.Th_lra)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_lra</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_lra</span></code></h1><p>Theory of Linear Rational Arithmetic</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-T" class="anchored"><a href="#module-T" class="anchor"></a><code><span><span class="keyword">module</span> T</span><span> = <a href="../../../sidekick/Sidekick_core/Term/index.html">Sidekick_core.Term</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Q" class="anchored"><a href="#module-Q" class="anchor"></a><code><span><span class="keyword">module</span> Q</span><span> = <a href="../../../sidekick/Sidekick_zarith/Rational/index.html">Sidekick_zarith.Rational</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_eq" class="anchored"><a href="#val-mk_eq" class="anchor"></a><code><span><span class="keyword">val</span> mk_eq : <span><a href="../../../sidekick/Sidekick_core/Term/index.html#type-store">Types_.Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Form/index.html#type-term">Form.term</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Form/index.html#type-term">Form.term</a> <span class="arrow">&#45;&gt;</span></span> <a href="../Form/index.html#type-term">Form.term</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_bool" class="anchored"><a href="#val-mk_bool" class="anchor"></a><code><span><span class="keyword">val</span> mk_bool : <span><a href="../../../sidekick/Sidekick_core_logic/Term/index.html#type-store">Sidekick_core_logic.Term.store</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../../sidekick/Sidekick_core_logic/Term/index.html#type-t">Sidekick_core_logic.Term.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-theory" class="anchored"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_lra (sidekick-base.Sidekick_base.Th_lra)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_lra</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_lra</span></code></h1><p>Theory of Linear Rational Arithmetic</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-T"><a href="#module-T" class="anchor"></a><code><span><span class="keyword">module</span> T</span><span> = <a href="../../../sidekick/Sidekick_core/Term/index.html">Sidekick_core.Term</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Q"><a href="#module-Q" class="anchor"></a><code><span><span class="keyword">module</span> Q</span><span> = <a href="../../../sidekick/Sidekick_zarith/Rational/index.html">Sidekick_zarith.Rational</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_eq"><a href="#val-mk_eq" class="anchor"></a><code><span><span class="keyword">val</span> mk_eq : <span><a href="../../../sidekick/Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Form/index.html#type-term">Form.term</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Form/index.html#type-term">Form.term</a> <span class="arrow">&#45;&gt;</span></span> <a href="../Form/index.html#type-term">Form.term</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_bool"><a href="#val-mk_bool" class="anchor"></a><code><span><span class="keyword">val</span> mk_bool : <span><a href="../../../sidekick/Sidekick_core_logic/Term/index.html#type-store">Sidekick_core_logic.Term.store</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../../sidekick/Sidekick_core_logic/Term/index.html#type-t">Sidekick_core_logic.Term.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-theory"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_ty_unin (sidekick-base.Sidekick_base.Th_ty_unin)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_ty_unin</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_ty_unin</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-theory" class="anchored"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Th_ty_unin (sidekick-base.Sidekick_base.Th_ty_unin)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_base</a> &#x00BB; Th_ty_unin</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base.Th_ty_unin</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-theory"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-theory">Solver.theory</a></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Check_cc (sidekick-base.Sidekick_smtlib.Check_cc)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Check_cc</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Check_cc</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-theory" class="anchored"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-cdcl_theory">Solver.cdcl_theory</a></span></code></div><div class="spec-doc"><p>theory that check validity of EUF conflicts, on the fly</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Check_cc (sidekick-base.Sidekick_smtlib.Check_cc)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Check_cc</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Check_cc</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-theory"><a href="#val-theory" class="anchor"></a><code><span><span class="keyword">val</span> theory : <a href="../Solver/index.html#type-cdcl_theory">Solver.cdcl_theory</a></span></code></div><div class="spec-doc"><p>theory that check validity of EUF conflicts, on the fly</p></div></div></div></body></html>

View file

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Driver (sidekick-base.Sidekick_smtlib.Driver)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Driver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Driver</span></code></h1><p>Driver.</p><p>The driver is responsible for processing statements from a SMTLIB file, and interacting with the solver based on the statement (asserting formulas, calling &quot;solve&quot;, etc.)</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-Asolver" class="anchored"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> Asolver</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/index.html">Solver.Asolver</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_bool_dyn" class="anchored"><a href="#val-th_bool_dyn" class="anchor"></a><code><span><span class="keyword">val</span> th_bool_dyn : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_bool_static" class="anchored"><a href="#val-th_bool_static" class="anchor"></a><code><span><span class="keyword">val</span> th_bool_static : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_bool" class="anchored"><a href="#val-th_bool" class="anchor"></a><code><span><span class="keyword">val</span> th_bool : <span><a href="../../Sidekick_base/Config/index.html#type-t">Sidekick_base.Config.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_data" class="anchored"><a href="#val-th_data" class="anchor"></a><code><span><span class="keyword">val</span> th_data : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_lra" class="anchored"><a href="#val-th_lra" class="anchor"></a><code><span><span class="keyword">val</span> th_lra : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-th_ty_unin" class="anchored"><a href="#val-th_ty_unin" class="anchor"></a><code><span><span class="keyword">val</span> th_ty_unin : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-or_error" class="anchored"><a href="#type-or_error" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a or_error</span></span><span> = <span><span>( <span class="type-var">'a</span>, string )</span> <span class="xref-unresolved">CCResult</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>The SMTLIB driver</p></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Driver (sidekick-base.Sidekick_smtlib.Driver)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Driver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Driver</span></code></h1><p>Driver.</p><p>The driver is responsible for processing statements from a SMTLIB file, and interacting with the solver based on the statement (asserting formulas, calling &quot;solve&quot;, etc.)</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Asolver"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> Asolver</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/index.html">Sidekick_abstract_solver.Asolver</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_bool_dyn"><a href="#val-th_bool_dyn" class="anchor"></a><code><span><span class="keyword">val</span> th_bool_dyn : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_bool_static"><a href="#val-th_bool_static" class="anchor"></a><code><span><span class="keyword">val</span> th_bool_static : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_bool"><a href="#val-th_bool" class="anchor"></a><code><span><span class="keyword">val</span> th_bool : <span><a href="../../Sidekick_base/Config/index.html#type-t">Sidekick_base.Config.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_data"><a href="#val-th_data" class="anchor"></a><code><span><span class="keyword">val</span> th_data : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_lra"><a href="#val-th_lra" class="anchor"></a><code><span><span class="keyword">val</span> th_lra : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-th_ty_unin"><a href="#val-th_ty_unin" class="anchor"></a><code><span><span class="keyword">val</span> th_ty_unin : <a href="../../Sidekick_base/Solver/index.html#type-theory">Sidekick_base.Solver.theory</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-or_error"><a href="#type-or_error" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a or_error</span></span><span> = <span><span>(<span class="type-var">'a</span>, string)</span> <span class="xref-unresolved">CCResult</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>The SMTLIB driver</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>?pp_cnf:bool <span class="arrow">&#45;&gt;</span></span>
<span>?proof_file:string <span class="arrow">&#45;&gt;</span></span>
<span>?pp_model:bool <span class="arrow">&#45;&gt;</span></span>
@ -8,4 +8,4 @@
<span>?memory:float <span class="arrow">&#45;&gt;</span></span>
<span>?progress:bool <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../sidekick/Sidekick_abstract_solver/Asolver/class-type-t/index.html">Asolver.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-process_stmt" class="anchored"><a href="#val-process_stmt" class="anchor"></a><code><span><span class="keyword">val</span> process_stmt : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_base/Statement/index.html#type-t">Sidekick_base.Statement.t</a> <span class="arrow">&#45;&gt;</span></span> <span>unit <a href="#type-or_error">or_error</a></span></span></code></div></div></div></body></html>
<a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-process_stmt"><a href="#val-process_stmt" class="anchor"></a><code><span><span class="keyword">val</span> process_stmt : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_base/Statement/index.html#type-t">Sidekick_base.Statement.t</a> <span class="arrow">&#45;&gt;</span></span> <span>unit <a href="#type-or_error">or_error</a></span></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Solver (sidekick-base.Sidekick_smtlib.Solver)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Solver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Solver</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-Asolver" class="anchored"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> Asolver</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/index.html">Sidekick_abstract_solver.Asolver</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Smt_solver" class="anchored"><a href="#module-Smt_solver" class="anchor"></a><code><span><span class="keyword">module</span> Smt_solver</span><span> = <a href="../../../sidekick/Sidekick_smt_solver/index.html">Sidekick_smt_solver</a></span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/class-type-t/index.html">Asolver.t</a></span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-cdcl_theory" class="anchored"><a href="#type-cdcl_theory" class="anchor"></a><code><span><span class="keyword">type</span> cdcl_theory</span><span> = <a href="../../../sidekick/Sidekick_smt_solver/index.html#type-theory">Smt_solver.theory</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Solver (sidekick-base.Sidekick_smtlib.Solver)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-base</a> &#x00BB; <a href="../index.html">Sidekick_smtlib</a> &#x00BB; Solver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib.Solver</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Asolver"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> Asolver</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/index.html">Sidekick_abstract_solver.Asolver</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Smt_solver"><a href="#module-Smt_solver" class="anchor"></a><code><span><span class="keyword">module</span> Smt_solver</span><span> = <a href="../../../sidekick/Sidekick_smt_solver/index.html">Sidekick_smt_solver</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../../../sidekick/Sidekick_abstract_solver/Asolver/class-type-t/index.html">Asolver.t</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-cdcl_theory"><a href="#type-cdcl_theory" class="anchor"></a><code><span><span class="keyword">type</span> cdcl_theory</span><span> = <a href="../../../sidekick/Sidekick_smt_solver/index.html#type-theory">Smt_solver.theory</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_smtlib (sidekick-base.Sidekick_smtlib)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick-base</a> &#x00BB; Sidekick_smtlib</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib</span></code></h1><p>SMTLib-2.6 Driver</p></header><div class="odoc-content"><p>This library provides a parser, a type-checker, and a driver for processing SMTLib-2 problems.</p><div class="odoc-spec"><div class="spec type" id="type-or_error" class="anchored"><a href="#type-or_error" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a or_error</span></span><span> = <span><span>( <span class="type-var">'a</span>, string )</span> <span class="xref-unresolved">CCResult</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Term" class="anchored"><a href="#module-Term" class="anchor"></a><code><span><span class="keyword">module</span> Term</span><span> = <a href="../Sidekick_base/Term/index.html">Sidekick_base.Term</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Stmt" class="anchored"><a href="#module-Stmt" class="anchor"></a><code><span><span class="keyword">module</span> Stmt</span><span> = <a href="../Sidekick_base/Statement/index.html">Sidekick_base.Statement</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Driver" class="anchored"><a href="#module-Driver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Driver/index.html">Driver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Driver.</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Solver" class="anchored"><a href="#module-Solver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Solver/index.html">Solver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Check_cc" class="anchored"><a href="#module-Check_cc" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Check_cc/index.html">Check_cc</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Model" class="anchored"><a href="#module-Model" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Model/index.html">Model</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Models</p></div></div><div class="odoc-spec"><div class="spec value" id="val-parse" class="anchored"><a href="#val-parse" class="anchor"></a><code><span><span class="keyword">val</span> parse : <span><a href="../Sidekick_base/Term/index.html#type-store">Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> <span><span><a href="../Sidekick_base/Statement/index.html#type-t">Stmt.t</a> list</span> <a href="#type-or_error">or_error</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-parse_stdin" class="anchored"><a href="#val-parse_stdin" class="anchor"></a><code><span><span class="keyword">val</span> parse_stdin : <span><a href="../Sidekick_base/Term/index.html#type-store">Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span><span><a href="../Sidekick_base/Statement/index.html#type-t">Stmt.t</a> list</span> <a href="#type-or_error">or_error</a></span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_smtlib (sidekick-base.Sidekick_smtlib)</title><link rel="stylesheet" href="../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick-base</a> &#x00BB; Sidekick_smtlib</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_smtlib</span></code></h1><p>SMTLib-2.6 Driver</p></header><div class="odoc-content"><p>This library provides a parser, a type-checker, and a driver for processing SMTLib-2 problems.</p><div class="odoc-spec"><div class="spec type anchored" id="type-or_error"><a href="#type-or_error" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a or_error</span></span><span> = <span><span>(<span class="type-var">'a</span>, string)</span> <span class="xref-unresolved">CCResult</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Term"><a href="#module-Term" class="anchor"></a><code><span><span class="keyword">module</span> Term</span><span> = <a href="../Sidekick_base/Term/index.html">Sidekick_base.Term</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Stmt"><a href="#module-Stmt" class="anchor"></a><code><span><span class="keyword">module</span> Stmt</span><span> = <a href="../Sidekick_base/Statement/index.html">Sidekick_base.Statement</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Driver"><a href="#module-Driver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Driver/index.html">Driver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Driver.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Solver"><a href="#module-Solver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Solver/index.html">Solver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Check_cc"><a href="#module-Check_cc" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Check_cc/index.html">Check_cc</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Model"><a href="#module-Model" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Model/index.html">Model</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Models</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-parse"><a href="#val-parse" class="anchor"></a><code><span><span class="keyword">val</span> parse : <span><a href="../Sidekick_base/Term/index.html#type-store">Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> <span><span><a href="../Sidekick_base/Statement/index.html#type-t">Stmt.t</a> list</span> <a href="#type-or_error">or_error</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-parse_stdin"><a href="#val-parse_stdin" class="anchor"></a><code><span><span class="keyword">val</span> parse_stdin : <span><a href="../Sidekick_base/Term/index.html#type-store">Term.store</a> <span class="arrow">&#45;&gt;</span></span> <span><span><a href="../Sidekick_base/Statement/index.html#type-t">Stmt.t</a> list</span> <a href="#type-or_error">or_error</a></span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>index (sidekick-base.index)</title><link rel="stylesheet" href="../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> sidekick-base</nav><header class="odoc-preamble"><h1 id="sidekick-base-index"><a href="#sidekick-base-index" class="anchor"></a>sidekick-base index</h1></header><nav class="odoc-toc"><ul><li><a href="#library-sidekick-base">Library sidekick-base</a></li><li><a href="#library-sidekick-base.smtlib">Library sidekick-base.smtlib</a></li></ul></nav><div class="odoc-content"><h2 id="library-sidekick-base"><a href="#library-sidekick-base" class="anchor"></a>Library sidekick-base</h2><p>The entry point of this library is the module: <a href="Sidekick_base/index.html"><code>Sidekick_base</code></a>.</p><h2 id="library-sidekick-base.smtlib"><a href="#library-sidekick-base.smtlib" class="anchor"></a>Library sidekick-base.smtlib</h2><p>The entry point of this library is the module: <a href="Sidekick_smtlib/index.html"><code>Sidekick_smtlib</code></a>.</p></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>index (sidekick-base.index)</title><link rel="stylesheet" href="../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> sidekick-base</nav><header class="odoc-preamble"><h1 id="sidekick-base-index"><a href="#sidekick-base-index" class="anchor"></a>sidekick-base index</h1></header><nav class="odoc-toc"><ul><li><a href="#library-sidekick-base">Library sidekick-base</a></li><li><a href="#library-sidekick-base.smtlib">Library sidekick-base.smtlib</a></li></ul></nav><div class="odoc-content"><h2 id="library-sidekick-base"><a href="#library-sidekick-base" class="anchor"></a>Library sidekick-base</h2><p>The entry point of this library is the module: <a href="Sidekick_base/index.html"><code>Sidekick_base</code></a>.</p><h2 id="library-sidekick-base.smtlib"><a href="#library-sidekick-base.smtlib" class="anchor"></a>Library sidekick-base.smtlib</h2><p>The entry point of this library is the module: <a href="Sidekick_smtlib/index.html"><code>Sidekick_smtlib</code></a>.</p></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dimacs_lexer (sidekick-bin.Sidekick_bin_lib.Dimacs_lexer)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Dimacs_lexer</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Dimacs_lexer</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-token" class="anchored"><a href="#type-token" class="anchor"></a><code><span><span class="keyword">type</span> token</span><span> = </span></code><table><tr id="type-token.EOF" class="anchored"><td class="def variant constructor"><a href="#type-token.EOF" class="anchor"></a><code><span>| </span><span><span class="constructor">EOF</span></span></code></td></tr><tr id="type-token.P" class="anchored"><td class="def variant constructor"><a href="#type-token.P" class="anchor"></a><code><span>| </span><span><span class="constructor">P</span></span></code></td></tr><tr id="type-token.CNF" class="anchored"><td class="def variant constructor"><a href="#type-token.CNF" class="anchor"></a><code><span>| </span><span><span class="constructor">CNF</span></span></code></td></tr><tr id="type-token.ZERO" class="anchored"><td class="def variant constructor"><a href="#type-token.ZERO" class="anchor"></a><code><span>| </span><span><span class="constructor">ZERO</span></span></code></td></tr><tr id="type-token.LIT" class="anchored"><td class="def variant constructor"><a href="#type-token.LIT" class="anchor"></a><code><span>| </span><span><span class="constructor">LIT</span> <span class="keyword">of</span> int</span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_tables" class="anchored"><a href="#val-__ocaml_lex_tables" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_tables : <span class="xref-unresolved">Stdlib</span>.Lexing.lex_tables</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-token" class="anchored"><a href="#val-token" class="anchor"></a><code><span><span class="keyword">val</span> token : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_token_rec" class="anchored"><a href="#val-__ocaml_lex_token_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_token_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-comment" class="anchored"><a href="#val-comment" class="anchor"></a><code><span><span class="keyword">val</span> comment : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_comment_rec" class="anchored"><a href="#val-__ocaml_lex_comment_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_comment_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dimacs_lexer (sidekick-bin.Sidekick_bin_lib.Dimacs_lexer)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Dimacs_lexer</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Dimacs_lexer</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-token"><a href="#type-token" class="anchor"></a><code><span><span class="keyword">type</span> token</span><span> = </span></code><ol><li id="type-token.EOF" class="def variant constructor anchored"><a href="#type-token.EOF" class="anchor"></a><code><span>| </span><span><span class="constructor">EOF</span></span></code></li><li id="type-token.P" class="def variant constructor anchored"><a href="#type-token.P" class="anchor"></a><code><span>| </span><span><span class="constructor">P</span></span></code></li><li id="type-token.CNF" class="def variant constructor anchored"><a href="#type-token.CNF" class="anchor"></a><code><span>| </span><span><span class="constructor">CNF</span></span></code></li><li id="type-token.ZERO" class="def variant constructor anchored"><a href="#type-token.ZERO" class="anchor"></a><code><span>| </span><span><span class="constructor">ZERO</span></span></code></li><li id="type-token.LIT" class="def variant constructor anchored"><a href="#type-token.LIT" class="anchor"></a><code><span>| </span><span><span class="constructor">LIT</span> <span class="keyword">of</span> int</span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_tables"><a href="#val-__ocaml_lex_tables" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_tables : <span class="xref-unresolved">Stdlib</span>.Lexing.lex_tables</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-token"><a href="#val-token" class="anchor"></a><code><span><span class="keyword">val</span> token : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_token_rec"><a href="#val-__ocaml_lex_token_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_token_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-comment"><a href="#val-comment" class="anchor"></a><code><span><span class="keyword">val</span> comment : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_comment_rec"><a href="#val-__ocaml_lex_comment_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_comment_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dimacs_parser (sidekick-bin.Sidekick_bin_lib.Dimacs_parser)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Dimacs_parser</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Dimacs_parser</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#dimacs-parser">DIMACS parser</a></li></ul></nav><div class="odoc-content"><h2 id="dimacs-parser"><a href="#dimacs-parser" class="anchor"></a>DIMACS parser</h2><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><span class="xref-unresolved">Stdlib</span>.in_channel <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-parse_header" class="anchored"><a href="#val-parse_header" class="anchor"></a><code><span><span class="keyword">val</span> parse_header : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int * int</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-next_clause" class="anchored"><a href="#val-next_clause" class="anchor"></a><code><span><span class="keyword">val</span> next_clause : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><span>int list</span> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-iter" class="anchored"><a href="#val-iter" class="anchor"></a><code><span><span class="keyword">val</span> iter : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><span>int list</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dimacs_parser (sidekick-bin.Sidekick_bin_lib.Dimacs_parser)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Dimacs_parser</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Dimacs_parser</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#dimacs-parser">DIMACS parser</a></li></ul></nav><div class="odoc-content"><h2 id="dimacs-parser"><a href="#dimacs-parser" class="anchor"></a>DIMACS parser</h2><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><span class="xref-unresolved">Stdlib</span>.in_channel <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-parse_header"><a href="#val-parse_header" class="anchor"></a><code><span><span class="keyword">val</span> parse_header : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int * int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-next_clause"><a href="#val-next_clause" class="anchor"></a><code><span><span class="keyword">val</span> next_clause : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><span>int list</span> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span><span class="keyword">val</span> iter : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><span>int list</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Drup_lexer (sidekick-bin.Sidekick_bin_lib.Drup_lexer)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Drup_lexer</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Drup_lexer</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-token" class="anchored"><a href="#type-token" class="anchor"></a><code><span><span class="keyword">type</span> token</span><span> = </span></code><table><tr id="type-token.EOF" class="anchored"><td class="def variant constructor"><a href="#type-token.EOF" class="anchor"></a><code><span>| </span><span><span class="constructor">EOF</span></span></code></td></tr><tr id="type-token.ZERO" class="anchored"><td class="def variant constructor"><a href="#type-token.ZERO" class="anchor"></a><code><span>| </span><span><span class="constructor">ZERO</span></span></code></td></tr><tr id="type-token.LIT" class="anchored"><td class="def variant constructor"><a href="#type-token.LIT" class="anchor"></a><code><span>| </span><span><span class="constructor">LIT</span> <span class="keyword">of</span> int</span></code></td></tr><tr id="type-token.D" class="anchored"><td class="def variant constructor"><a href="#type-token.D" class="anchor"></a><code><span>| </span><span><span class="constructor">D</span></span></code></td></tr><tr id="type-token.R" class="anchored"><td class="def variant constructor"><a href="#type-token.R" class="anchor"></a><code><span>| </span><span><span class="constructor">R</span></span></code></td></tr><tr id="type-token.I" class="anchored"><td class="def variant constructor"><a href="#type-token.I" class="anchor"></a><code><span>| </span><span><span class="constructor">I</span></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_tables" class="anchored"><a href="#val-__ocaml_lex_tables" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_tables : <span class="xref-unresolved">Stdlib</span>.Lexing.lex_tables</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-token" class="anchored"><a href="#val-token" class="anchor"></a><code><span><span class="keyword">val</span> token : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_token_rec" class="anchored"><a href="#val-__ocaml_lex_token_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_token_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-comment" class="anchored"><a href="#val-comment" class="anchor"></a><code><span><span class="keyword">val</span> comment : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-__ocaml_lex_comment_rec" class="anchored"><a href="#val-__ocaml_lex_comment_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_comment_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Drup_lexer (sidekick-bin.Sidekick_bin_lib.Drup_lexer)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Drup_lexer</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Drup_lexer</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-token"><a href="#type-token" class="anchor"></a><code><span><span class="keyword">type</span> token</span><span> = </span></code><ol><li id="type-token.EOF" class="def variant constructor anchored"><a href="#type-token.EOF" class="anchor"></a><code><span>| </span><span><span class="constructor">EOF</span></span></code></li><li id="type-token.ZERO" class="def variant constructor anchored"><a href="#type-token.ZERO" class="anchor"></a><code><span>| </span><span><span class="constructor">ZERO</span></span></code></li><li id="type-token.LIT" class="def variant constructor anchored"><a href="#type-token.LIT" class="anchor"></a><code><span>| </span><span><span class="constructor">LIT</span> <span class="keyword">of</span> int</span></code></li><li id="type-token.D" class="def variant constructor anchored"><a href="#type-token.D" class="anchor"></a><code><span>| </span><span><span class="constructor">D</span></span></code></li><li id="type-token.R" class="def variant constructor anchored"><a href="#type-token.R" class="anchor"></a><code><span>| </span><span><span class="constructor">R</span></span></code></li><li id="type-token.I" class="def variant constructor anchored"><a href="#type-token.I" class="anchor"></a><code><span>| </span><span><span class="constructor">I</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_tables"><a href="#val-__ocaml_lex_tables" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_tables : <span class="xref-unresolved">Stdlib</span>.Lexing.lex_tables</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-token"><a href="#val-token" class="anchor"></a><code><span><span class="keyword">val</span> token : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_token_rec"><a href="#val-__ocaml_lex_token_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_token_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-comment"><a href="#val-comment" class="anchor"></a><code><span><span class="keyword">val</span> comment : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-__ocaml_lex_comment_rec"><a href="#val-__ocaml_lex_comment_rec" class="anchor"></a><code><span><span class="keyword">val</span> __ocaml_lex_comment_rec : <span><span class="xref-unresolved">Stdlib</span>.Lexing.lexbuf <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-token">token</a></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Drup_parser (sidekick-bin.Sidekick_bin_lib.Drup_parser)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Drup_parser</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Drup_parser</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#drup-parser">DRUP parser</a></li></ul></nav><div class="odoc-content"><h2 id="drup-parser"><a href="#drup-parser" class="anchor"></a>DRUP parser</h2><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-event" class="anchored"><a href="#type-event" class="anchor"></a><code><span><span class="keyword">type</span> event</span><span> = </span></code><table><tr id="type-event.Input" class="anchored"><td class="def variant constructor"><a href="#type-event.Input" class="anchor"></a><code><span>| </span><span><span class="constructor">Input</span> <span class="keyword">of</span> <span>int list</span></span></code></td></tr><tr id="type-event.Add" class="anchored"><td class="def variant constructor"><a href="#type-event.Add" class="anchor"></a><code><span>| </span><span><span class="constructor">Add</span> <span class="keyword">of</span> <span>int list</span></span></code></td></tr><tr id="type-event.Delete" class="anchored"><td class="def variant constructor"><a href="#type-event.Delete" class="anchor"></a><code><span>| </span><span><span class="constructor">Delete</span> <span class="keyword">of</span> <span>int list</span></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec value" id="val-create_chan" class="anchored"><a href="#val-create_chan" class="anchor"></a><code><span><span class="keyword">val</span> create_chan : <span><span class="xref-unresolved">Stdlib</span>.in_channel <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create_string" class="anchored"><a href="#val-create_string" class="anchor"></a><code><span><span class="keyword">val</span> create_string : <span>string <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-next" class="anchored"><a href="#val-next" class="anchor"></a><code><span><span class="keyword">val</span> next : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-event">event</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-iter" class="anchored"><a href="#val-iter" class="anchor"></a><code><span><span class="keyword">val</span> iter : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-event">event</a> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Drup_parser (sidekick-bin.Sidekick_bin_lib.Drup_parser)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick-bin</a> &#x00BB; <a href="../index.html">Sidekick_bin_lib</a> &#x00BB; Drup_parser</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib.Drup_parser</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#drup-parser">DRUP parser</a></li></ul></nav><div class="odoc-content"><h2 id="drup-parser"><a href="#drup-parser" class="anchor"></a>DRUP parser</h2><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-event"><a href="#type-event" class="anchor"></a><code><span><span class="keyword">type</span> event</span><span> = </span></code><ol><li id="type-event.Input" class="def variant constructor anchored"><a href="#type-event.Input" class="anchor"></a><code><span>| </span><span><span class="constructor">Input</span> <span class="keyword">of</span> <span>int list</span></span></code></li><li id="type-event.Add" class="def variant constructor anchored"><a href="#type-event.Add" class="anchor"></a><code><span>| </span><span><span class="constructor">Add</span> <span class="keyword">of</span> <span>int list</span></span></code></li><li id="type-event.Delete" class="def variant constructor anchored"><a href="#type-event.Delete" class="anchor"></a><code><span>| </span><span><span class="constructor">Delete</span> <span class="keyword">of</span> <span>int list</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create_chan"><a href="#val-create_chan" class="anchor"></a><code><span><span class="keyword">val</span> create_chan : <span><span class="xref-unresolved">Stdlib</span>.in_channel <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create_string"><a href="#val-create_string" class="anchor"></a><code><span><span class="keyword">val</span> create_string : <span>string <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-next"><a href="#val-next" class="anchor"></a><code><span><span class="keyword">val</span> next : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-event">event</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span><span class="keyword">val</span> iter : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-event">event</a> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_bin_lib (sidekick-bin.Sidekick_bin_lib)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick-bin</a> &#x00BB; Sidekick_bin_lib</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib</span></code></h1><p>Library for the Sidekick executables</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-Dimacs_lexer" class="anchored"><a href="#module-Dimacs_lexer" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dimacs_lexer/index.html">Dimacs_lexer</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Dimacs_parser" class="anchored"><a href="#module-Dimacs_parser" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dimacs_parser/index.html">Dimacs_parser</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Drup_lexer" class="anchored"><a href="#module-Drup_lexer" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Drup_lexer/index.html">Drup_lexer</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Drup_parser" class="anchored"><a href="#module-Drup_parser" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Drup_parser/index.html">Drup_parser</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_bin_lib (sidekick-bin.Sidekick_bin_lib)</title><link rel="stylesheet" href="../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick-bin</a> &#x00BB; Sidekick_bin_lib</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bin_lib</span></code></h1><p>Library for the Sidekick executables</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Dimacs_lexer"><a href="#module-Dimacs_lexer" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dimacs_lexer/index.html">Dimacs_lexer</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Dimacs_parser"><a href="#module-Dimacs_parser" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dimacs_parser/index.html">Dimacs_parser</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Drup_lexer"><a href="#module-Drup_lexer" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Drup_lexer/index.html">Drup_lexer</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Drup_parser"><a href="#module-Drup_parser" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Drup_parser/index.html">Drup_parser</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>index (sidekick-bin.index)</title><link rel="stylesheet" href="../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> sidekick-bin</nav><header class="odoc-preamble"><h1 id="sidekick-bin-index"><a href="#sidekick-bin-index" class="anchor"></a>sidekick-bin index</h1></header><nav class="odoc-toc"><ul><li><a href="#library-sidekick-bin.lib">Library sidekick-bin.lib</a></li></ul></nav><div class="odoc-content"><h2 id="library-sidekick-bin.lib"><a href="#library-sidekick-bin.lib" class="anchor"></a>Library sidekick-bin.lib</h2><p>The entry point of this library is the module: <a href="Sidekick_bin_lib/index.html"><code>Sidekick_bin_lib</code></a>.</p></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>index (sidekick-bin.index)</title><link rel="stylesheet" href="../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> sidekick-bin</nav><header class="odoc-preamble"><h1 id="sidekick-bin-index"><a href="#sidekick-bin-index" class="anchor"></a>sidekick-bin index</h1></header><nav class="odoc-toc"><ul><li><a href="#library-sidekick-bin.lib">Library sidekick-bin.lib</a></li></ul></nav><div class="odoc-content"><h2 id="library-sidekick-bin.lib"><a href="#library-sidekick-bin.lib" class="anchor"></a>Library sidekick-bin.lib</h2><p>The entry point of this library is the module: <a href="Sidekick_bin_lib/index.html"><code>Sidekick_bin_lib</code></a>.</p></div></body></html>

View file

@ -1,9 +1,9 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>t (sidekick.Sidekick_abstract_solver.Asolver.t)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_abstract_solver</a> &#x00BB; <a href="../index.html">Asolver</a> &#x00BB; t</nav><header class="odoc-preamble"><h1>Class type <code><span>Asolver.t</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec method" id="method-assert_term" class="anchored"><a href="#method-assert_term" class="anchor"></a><code><span><span class="keyword">method</span> assert_term : <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Helper that turns the term into an atom, before adding the result to the solver as a unit clause assertion.</p><p>This uses <code>Proof_sat</code>.sat_input_clause to justify the assertion.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-assert_clause" class="anchored"><a href="#method-assert_clause" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause : <span><span><a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> array</span> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../../Sidekick_proof/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>add_clause solver cs</code> adds a boolean clause to the solver. Subsequent calls to <code>solve</code> will need to satisfy this clause.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-assert_clause_l" class="anchored"><a href="#method-assert_clause_l" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause_l : <span><span><a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Sidekick_proof/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p>Add a clause to the solver, given as a list.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-add_ty" class="anchored"><a href="#method-add_ty" class="anchor"></a><code><span><span class="keyword">method</span> add_ty : <span>ty:<a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Add a new sort/atomic type.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-lit_of_term" class="anchored"><a href="#method-lit_of_term" class="anchor"></a><code><span><span class="keyword">method</span> lit_of_term : <span>?sign:bool <span class="arrow">&#45;&gt;</span></span> <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div><div class="spec-doc"><p>Convert a term into a simplified literal.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-tst" class="anchored"><a href="#method-tst" class="anchor"></a><code><span><span class="keyword">method</span> tst : <a href="../../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec method" id="method-solve" class="anchored"><a href="#method-solve" class="anchor"></a><code><span><span class="keyword">method</span> solve : <span>?on_exit:<span><span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>( <span>int <span class="arrow">&#45;&gt;</span></span> bool )</span> <span class="arrow">&#45;&gt;</span></span>
<span>assumptions:<span><a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>t (sidekick.Sidekick_abstract_solver.Asolver.t)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_abstract_solver</a> &#x00BB; <a href="../index.html">Asolver</a> &#x00BB; t</nav><header class="odoc-preamble"><h1>Class type <code><span>Asolver.t</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec method anchored" id="method-assert_term"><a href="#method-assert_term" class="anchor"></a><code><span><span class="keyword">method</span> assert_term : <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Helper that turns the term into an atom, before adding the result to the solver as a unit clause assertion.</p><p>This uses <code>Proof_sat</code>.sat_input_clause to justify the assertion.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-assert_clause"><a href="#method-assert_clause" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause : <span><span><a href="../../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> array</span> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../../Sidekick_proof__/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>add_clause solver cs</code> adds a boolean clause to the solver. Subsequent calls to <code>solve</code> will need to satisfy this clause.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-assert_clause_l"><a href="#method-assert_clause_l" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause_l : <span><span><a href="../../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Sidekick_proof__/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p>Add a clause to the solver, given as a list.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-add_ty"><a href="#method-add_ty" class="anchor"></a><code><span><span class="keyword">method</span> add_ty : <span>ty:<a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Add a new sort/atomic type.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-lit_of_term"><a href="#method-lit_of_term" class="anchor"></a><code><span><span class="keyword">method</span> lit_of_term : <span>?sign:bool <span class="arrow">&#45;&gt;</span></span> <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div><div class="spec-doc"><p>Convert a term into a simplified literal.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-tst"><a href="#method-tst" class="anchor"></a><code><span><span class="keyword">method</span> tst : <a href="../../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-solve"><a href="#method-solve" class="anchor"></a><code><span><span class="keyword">method</span> solve : <span>?on_exit:<span><span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>(<span>int <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span>
<span>assumptions:<span><a href="../../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>unit <span class="arrow">&#45;&gt;</span></span>
<a href="../Check_res/index.html#type-t">Check_res.t</a></span></code></div><div class="spec-doc"><p>Checks the satisfiability of the clauses added so far to the solver.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">assumptions</span> <p>a set of atoms held to be true. The unsat core, if any, will be a subset of <code>assumptions</code>.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_progress</span> <p>called regularly during solving.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">should_stop</span> <p>a callback regularly called from within the solver. It is given a number of &quot;steps&quot; done since last call. The exact notion of step is not defined, but is guaranteed to increase regularly. The function should return <code>true</code> if it judges solving must stop (returning <code>Unknown</code>), <code>false</code> if solving can proceed.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_exit</span> <p>functions to be run before this returns</p></li></ul></div></div><div class="odoc-spec"><div class="spec method" id="method-last_res" class="anchored"><a href="#method-last_res" class="anchor"></a><code><span><span class="keyword">method</span> last_res : <span><a href="../Check_res/index.html#type-t">Check_res.t</a> option</span></span></code></div><div class="spec-doc"><p>Returns the result of the last call to <code>solve</code>, if the logic statee has not changed (mostly by asserting new clauses).</p></div></div><div class="odoc-spec"><div class="spec method" id="method-proof_tracer" class="anchored"><a href="#method-proof_tracer" class="anchor"></a><code><span><span class="keyword">method</span> proof_tracer : <a href="../../../Sidekick_proof/Tracer/class-type-t/index.html">Proof.Tracer.t</a></span></code></div><div class="spec-doc"><p>TODO: remove, use Tracer instead</p></div></div></div></body></html>
<a href="../../../Sidekick_abstract_solver__/Check_res/index.html#type-t">Check_res.t</a></span></code></div><div class="spec-doc"><p>Checks the satisfiability of the clauses added so far to the solver.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">assumptions</span> <p>a set of atoms held to be true. The unsat core, if any, will be a subset of <code>assumptions</code>.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_progress</span> <p>called regularly during solving.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">should_stop</span> <p>a callback regularly called from within the solver. It is given a number of &quot;steps&quot; done since last call. The exact notion of step is not defined, but is guaranteed to increase regularly. The function should return <code>true</code> if it judges solving must stop (returning <code>Unknown</code>), <code>false</code> if solving can proceed.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_exit</span> <p>functions to be run before this returns</p></li></ul></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-last_res"><a href="#method-last_res" class="anchor"></a><code><span><span class="keyword">method</span> last_res : <span><a href="../../../Sidekick_abstract_solver__/Check_res/index.html#type-t">Check_res.t</a> option</span></span></code></div><div class="spec-doc"><p>Returns the result of the last call to <code>solve</code>, if the logic statee has not changed (mostly by asserting new clauses).</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-proof_tracer"><a href="#method-proof_tracer" class="anchor"></a><code><span><span class="keyword">method</span> proof_tracer : <a href="../../../Sidekick_proof__/Tracer/class-type-t/index.html">Proof.Tracer.t</a></span></code></div><div class="spec-doc"><p>TODO: remove, use Tracer instead</p></div></div></div></body></html>

View file

@ -1,21 +1,21 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Asolver (sidekick.Sidekick_abstract_solver.Asolver)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; Asolver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver.Asolver</span></code></h1><p>Abstract interface for a solver</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-Unknown" class="anchored"><a href="#module-Unknown" class="anchor"></a><code><span><span class="keyword">module</span> Unknown</span><span> = <a href="../Unknown/index.html">Unknown</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Check_res" class="anchored"><a href="#module-Check_res" class="anchor"></a><code><span><span class="keyword">module</span> Check_res</span><span> = <a href="../Check_res/index.html">Check_res</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Proof" class="anchored"><a href="#module-Proof" class="anchor"></a><code><span><span class="keyword">module</span> Proof</span><span> = <a href="../../Sidekick_proof/index.html">Sidekick_proof</a></span></code></div></div><div class="odoc-spec"><div class="spec class-type" id="class-type-t" class="anchored"><a href="#class-type-t" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">type</span> </span><span><a href="class-type-t/index.html">t</a></span><span> = <span class="keyword">object</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-tst" class="anchored"><a href="#val-tst" class="anchor"></a><code><span><span class="keyword">val</span> tst : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-assert_term" class="anchored"><a href="#val-assert_term" class="anchor"></a><code><span><span class="keyword">val</span> assert_term : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-assert_clause" class="anchored"><a href="#val-assert_clause" class="anchor"></a><code><span><span class="keyword">val</span> assert_clause :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Asolver (sidekick.Sidekick_abstract_solver.Asolver)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; Asolver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver.Asolver</span></code></h1><p>Abstract interface for a solver</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Unknown"><a href="#module-Unknown" class="anchor"></a><code><span><span class="keyword">module</span> Unknown</span><span> = <a href="../Unknown/index.html">Unknown</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Check_res"><a href="#module-Check_res" class="anchor"></a><code><span><span class="keyword">module</span> Check_res</span><span> = <a href="../Check_res/index.html">Check_res</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Proof"><a href="#module-Proof" class="anchor"></a><code><span><span class="keyword">module</span> Proof</span><span> = <a href="../../Sidekick_proof/index.html">Sidekick_proof</a></span></code></div></div><div class="odoc-spec"><div class="spec class-type anchored" id="class-type-t"><a href="#class-type-t" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">type</span> </span><span><a href="class-type-t/index.html">t</a></span><span> = <span class="keyword">object</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-tst"><a href="#val-tst" class="anchor"></a><code><span><span class="keyword">val</span> tst : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-assert_term"><a href="#val-assert_term" class="anchor"></a><code><span><span class="keyword">val</span> assert_term : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-assert_clause"><a href="#val-assert_clause" class="anchor"></a><code><span><span class="keyword">val</span> assert_clause :
<span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> array</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-assert_clause_l" class="anchored"><a href="#val-assert_clause_l" class="anchor"></a><code><span><span class="keyword">val</span> assert_clause_l :
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-assert_clause_l"><a href="#val-assert_clause_l" class="anchor"></a><code><span><span class="keyword">val</span> assert_clause_l :
<span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-add_ty" class="anchored"><a href="#val-add_ty" class="anchor"></a><code><span><span class="keyword">val</span> add_ty : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span>ty:<a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-lit_of_term" class="anchored"><a href="#val-lit_of_term" class="anchor"></a><code><span><span class="keyword">val</span> lit_of_term :
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_ty"><a href="#val-add_ty" class="anchor"></a><code><span><span class="keyword">val</span> add_ty : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span>ty:<a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-lit_of_term"><a href="#val-lit_of_term" class="anchor"></a><code><span><span class="keyword">val</span> lit_of_term :
<span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?sign:bool <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-solve" class="anchored"><a href="#val-solve" class="anchor"></a><code><span><span class="keyword">val</span> solve :
<a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-solve"><a href="#val-solve" class="anchor"></a><code><span><span class="keyword">val</span> solve :
<span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?on_exit:<span><span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>( <span>int <span class="arrow">&#45;&gt;</span></span> bool )</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_exit:<span><span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>(<span>int <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span>
<span>assumptions:<span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>unit <span class="arrow">&#45;&gt;</span></span>
<a href="../Check_res/index.html#type-t">Check_res.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-last_res" class="anchored"><a href="#val-last_res" class="anchor"></a><code><span><span class="keyword">val</span> last_res : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Check_res/index.html#type-t">Check_res.t</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-proof" class="anchored"><a href="#val-proof" class="anchor"></a><code><span><span class="keyword">val</span> proof : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_proof/Tracer/class-type-t/index.html">Proof.Tracer.t</a></span></code></div></div></div></body></html>
<a href="../Check_res/index.html#type-t">Check_res.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-last_res"><a href="#val-last_res" class="anchor"></a><code><span><span class="keyword">val</span> last_res : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Check_res/index.html#type-t">Check_res.t</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-proof"><a href="#val-proof" class="anchor"></a><code><span><span class="keyword">val</span> proof : <span><a href="class-type-t/index.html">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_proof/Tracer/class-type-t/index.html">Proof.Tracer.t</a></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Unknown (sidekick.Sidekick_abstract_solver.Unknown)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; Unknown</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver.Unknown</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><table><tr id="type-t.U_timeout" class="anchored"><td class="def variant constructor"><a href="#type-t.U_timeout" class="anchor"></a><code><span>| </span><span><span class="constructor">U_timeout</span></span></code></td></tr><tr id="type-t.U_max_depth" class="anchored"><td class="def variant constructor"><a href="#type-t.U_max_depth" class="anchor"></a><code><span>| </span><span><span class="constructor">U_max_depth</span></span></code></td></tr><tr id="type-t.U_incomplete" class="anchored"><td class="def variant constructor"><a href="#type-t.U_incomplete" class="anchor"></a><code><span>| </span><span><span class="constructor">U_incomplete</span></span></code></td></tr><tr id="type-t.U_asked_to_stop" class="anchored"><td class="def variant constructor"><a href="#type-t.U_asked_to_stop" class="anchor"></a><code><span>| </span><span><span class="constructor">U_asked_to_stop</span></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <span class="xref-unresolved">Sidekick_core</span>.Fmt.printer</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Unknown (sidekick.Sidekick_abstract_solver.Unknown)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; Unknown</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver.Unknown</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><ol><li id="type-t.U_timeout" class="def variant constructor anchored"><a href="#type-t.U_timeout" class="anchor"></a><code><span>| </span><span><span class="constructor">U_timeout</span></span></code></li><li id="type-t.U_max_depth" class="def variant constructor anchored"><a href="#type-t.U_max_depth" class="anchor"></a><code><span>| </span><span><span class="constructor">U_max_depth</span></span></code></li><li id="type-t.U_incomplete" class="def variant constructor anchored"><a href="#type-t.U_incomplete" class="anchor"></a><code><span>| </span><span><span class="constructor">U_incomplete</span></span></code></li><li id="type-t.U_asked_to_stop" class="def variant constructor anchored"><a href="#type-t.U_asked_to_stop" class="anchor"></a><code><span>| </span><span><span class="constructor">U_asked_to_stop</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <span class="xref-unresolved">Sidekick_core</span>.Fmt.printer</span></span></code></div></div></div></body></html>

View file

@ -1,11 +1,11 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>t (sidekick.Sidekick_abstract_solver.t)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; t</nav><header class="odoc-preamble"><h1>Class type <code><span>Sidekick_abstract_solver.t</span></code></h1><p>Main abstract solver type</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec method" id="method-assert_term" class="anchored"><a href="#method-assert_term" class="anchor"></a><code><span><span class="keyword">method</span> assert_term : <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Helper that turns the term into an atom, before adding the result to the solver as a unit clause assertion.</p><p>This uses <code>Proof_sat</code>.sat_input_clause to justify the assertion.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-assert_clause" class="anchored"><a href="#method-assert_clause" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause : <span><span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> array</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Asolver.Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p><code>add_clause solver cs</code> adds a boolean clause to the solver. Subsequent calls to <code>solve</code> will need to satisfy this clause.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-assert_clause_l" class="anchored"><a href="#method-assert_clause_l" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause_l : <span><span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Asolver.Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p>Add a clause to the solver, given as a list.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-add_ty" class="anchored"><a href="#method-add_ty" class="anchor"></a><code><span><span class="keyword">method</span> add_ty : <span>ty:<a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Add a new sort/atomic type.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-lit_of_term" class="anchored"><a href="#method-lit_of_term" class="anchor"></a><code><span><span class="keyword">method</span> lit_of_term : <span>?sign:bool <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div><div class="spec-doc"><p>Convert a term into a simplified literal.</p></div></div><div class="odoc-spec"><div class="spec method" id="method-tst" class="anchored"><a href="#method-tst" class="anchor"></a><code><span><span class="keyword">method</span> tst : <a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec method" id="method-solve" class="anchored"><a href="#method-solve" class="anchor"></a><code><span><span class="keyword">method</span> solve : <span>?on_exit:<span><span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>( <span>unit <span class="arrow">&#45;&gt;</span></span> unit )</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>( <span>int <span class="arrow">&#45;&gt;</span></span> bool )</span> <span class="arrow">&#45;&gt;</span></span>
<span>assumptions:<span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>t (sidekick.Sidekick_abstract_solver.t)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_abstract_solver</a> &#x00BB; t</nav><header class="odoc-preamble"><h1>Class type <code><span>Sidekick_abstract_solver.t</span></code></h1><p>Main abstract solver type</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec method anchored" id="method-assert_term"><a href="#method-assert_term" class="anchor"></a><code><span><span class="keyword">method</span> assert_term : <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Helper that turns the term into an atom, before adding the result to the solver as a unit clause assertion.</p><p>This uses <code>Proof_sat</code>.sat_input_clause to justify the assertion.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-assert_clause"><a href="#method-assert_clause" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause : <span><span><a href="../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> array</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof__/Pterm/index.html#type-delayed">Asolver.Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p><code>add_clause solver cs</code> adds a boolean clause to the solver. Subsequent calls to <code>solve</code> will need to satisfy this clause.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-assert_clause_l"><a href="#method-assert_clause_l" class="anchor"></a><code><span><span class="keyword">method</span> assert_clause_l : <span><span><a href="../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof__/Pterm/index.html#type-delayed">Asolver.Proof.Pterm.delayed</a> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div><div class="spec-doc"><p>Add a clause to the solver, given as a list.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-add_ty"><a href="#method-add_ty" class="anchor"></a><code><span><span class="keyword">method</span> add_ty : <span>ty:<a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Add a new sort/atomic type.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-lit_of_term"><a href="#method-lit_of_term" class="anchor"></a><code><span><span class="keyword">method</span> lit_of_term : <span>?sign:bool <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a></span></code></div><div class="spec-doc"><p>Convert a term into a simplified literal.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-tst"><a href="#method-tst" class="anchor"></a><code><span><span class="keyword">method</span> tst : <a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-solve"><a href="#method-solve" class="anchor"></a><code><span><span class="keyword">method</span> solve : <span>?on_exit:<span><span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>?on_progress:<span>(<span>unit <span class="arrow">&#45;&gt;</span></span> unit)</span> <span class="arrow">&#45;&gt;</span></span>
<span>?should_stop:<span>(<span>int <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span>
<span>assumptions:<span><a href="../../Sidekick_core__/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> <span class="arrow">&#45;&gt;</span></span>
<span>unit <span class="arrow">&#45;&gt;</span></span>
<a href="../Asolver/Check_res/index.html#type-t">Asolver.Check_res.t</a></span></code></div><div class="spec-doc"><p>Checks the satisfiability of the clauses added so far to the solver.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">assumptions</span> <p>a set of atoms held to be true. The unsat core, if any, will be a subset of <code>assumptions</code>.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_progress</span> <p>called regularly during solving.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">should_stop</span> <p>a callback regularly called from within the solver. It is given a number of &quot;steps&quot; done since last call. The exact notion of step is not defined, but is guaranteed to increase regularly. The function should return <code>true</code> if it judges solving must stop (returning <code>Unknown</code>), <code>false</code> if solving can proceed.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_exit</span> <p>functions to be run before this returns</p></li></ul></div></div><div class="odoc-spec"><div class="spec method" id="method-last_res" class="anchored"><a href="#method-last_res" class="anchor"></a><code><span><span class="keyword">method</span> last_res : <span><a href="../Asolver/Check_res/index.html#type-t">Asolver.Check_res.t</a> option</span></span></code></div><div class="spec-doc"><p>Returns the result of the last call to <code>solve</code>, if the logic statee has not changed (mostly by asserting new clauses).</p></div></div><div class="odoc-spec"><div class="spec method" id="method-proof_tracer" class="anchored"><a href="#method-proof_tracer" class="anchor"></a><code><span><span class="keyword">method</span> proof_tracer : <a href="../../Sidekick_proof/Tracer/class-type-t/index.html">Asolver.Proof.Tracer.t</a></span></code></div><div class="spec-doc"><p>TODO: remove, use Tracer instead</p></div></div></div></body></html>
<a href="../../Sidekick_abstract_solver__/Check_res/index.html#type-t">Asolver.Check_res.t</a></span></code></div><div class="spec-doc"><p>Checks the satisfiability of the clauses added so far to the solver.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">assumptions</span> <p>a set of atoms held to be true. The unsat core, if any, will be a subset of <code>assumptions</code>.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_progress</span> <p>called regularly during solving.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">should_stop</span> <p>a callback regularly called from within the solver. It is given a number of &quot;steps&quot; done since last call. The exact notion of step is not defined, but is guaranteed to increase regularly. The function should return <code>true</code> if it judges solving must stop (returning <code>Unknown</code>), <code>false</code> if solving can proceed.</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">on_exit</span> <p>functions to be run before this returns</p></li></ul></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-last_res"><a href="#method-last_res" class="anchor"></a><code><span><span class="keyword">method</span> last_res : <span><a href="../../Sidekick_abstract_solver__/Check_res/index.html#type-t">Asolver.Check_res.t</a> option</span></span></code></div><div class="spec-doc"><p>Returns the result of the last call to <code>solve</code>, if the logic statee has not changed (mostly by asserting new clauses).</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-proof_tracer"><a href="#method-proof_tracer" class="anchor"></a><code><span><span class="keyword">method</span> proof_tracer : <a href="../../Sidekick_proof__/Tracer/class-type-t/index.html">Asolver.Proof.Tracer.t</a></span></code></div><div class="spec-doc"><p>TODO: remove, use Tracer instead</p></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_abstract_solver (sidekick.Sidekick_abstract_solver)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_abstract_solver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver</span></code></h1><p>Abstract interface for a solver</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-Unknown" class="anchored"><a href="#module-Unknown" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Unknown/index.html">Unknown</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Check_res" class="anchored"><a href="#module-Check_res" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Check_res/index.html">Check_res</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Result of solving for the current set of clauses</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Asolver" class="anchored"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Asolver/index.html">Asolver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Abstract interface for a solver</p></div></div><div class="odoc-spec"><div class="spec class-type" id="class-type-t" class="anchored"><a href="#class-type-t" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">type</span> </span><span><a href="class-type-t/index.html">t</a></span><span> = <a href="Asolver/class-type-t/index.html">Asolver.t</a></span></code></div><div class="spec-doc"><p>Main abstract solver type</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_abstract_solver (sidekick.Sidekick_abstract_solver)</title><link rel="stylesheet" href="../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_abstract_solver</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_abstract_solver</span></code></h1><p>Abstract interface for a solver</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Unknown"><a href="#module-Unknown" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Unknown/index.html">Unknown</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Check_res"><a href="#module-Check_res" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Check_res/index.html">Check_res</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Result of solving for the current set of clauses</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Asolver"><a href="#module-Asolver" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Asolver/index.html">Asolver</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Abstract interface for a solver</p></div></div><div class="odoc-spec"><div class="spec class-type anchored" id="class-type-t"><a href="#class-type-t" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">type</span> </span><span><a href="class-type-t/index.html">t</a></span><span> = <a href="../Sidekick_abstract_solver__/Asolver/class-type-t/index.html">Asolver.t</a></span></code></div><div class="spec-doc"><p>Main abstract solver type</p></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_arith (sidekick.Sidekick_arith)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_arith</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_arith</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type" id="module-type-NUM" class="anchored"><a href="#module-type-NUM" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-NUM/index.html">NUM</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type" id="module-type-INT" class="anchored"><a href="#module-type-INT" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-INT/index.html">INT</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type" id="module-type-RATIONAL" class="anchored"><a href="#module-type-RATIONAL" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-RATIONAL/index.html">RATIONAL</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type" id="module-type-INT_FULL" class="anchored"><a href="#module-type-INT_FULL" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-INT_FULL/index.html">INT_FULL</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_arith (sidekick.Sidekick_arith)</title><link rel="stylesheet" href="../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_arith</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_arith</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-NUM"><a href="#module-type-NUM" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-NUM/index.html">NUM</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-INT"><a href="#module-type-INT" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-INT/index.html">INT</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-RATIONAL"><a href="#module-type-RATIONAL" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-RATIONAL/index.html">RATIONAL</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-INT_FULL"><a href="#module-type-INT_FULL" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-INT_FULL/index.html">INT_FULL</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Decode (sidekick.Sidekick_bencode.Decode)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_bencode</a> &#x00BB; Decode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode.Decode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-of_string" class="anchored"><a href="#val-of_string" class="anchor"></a><code><span><span class="keyword">val</span> of_string : <span>?idx:int <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> <span><span>(int * <a href="../index.html#type-t">t</a>)</span> option</span></span></code></div><div class="spec-doc"><p>Decode string, and also return how many bytes were consumed.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">idx</span> <p>initial index (default 0)</p></li></ul></div></div><div class="odoc-spec"><div class="spec value" id="val-of_string_exn" class="anchored"><a href="#val-of_string_exn" class="anchor"></a><code><span><span class="keyword">val</span> of_string_exn : <span>?idx:int <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> int * <a href="../index.html#type-t">t</a></span></code></div><div class="spec-doc"><p>Parse string.</p><ul class="at-tags"><li class="raises"><span class="at-tag">raises</span> <span class="value">Error.Error</span> <p>if the string is not valid bencode.</p></li></ul></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Decode (sidekick.Sidekick_bencode.Decode)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_bencode</a> &#x00BB; Decode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode.Decode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-of_string"><a href="#val-of_string" class="anchor"></a><code><span><span class="keyword">val</span> of_string : <span>?idx:int <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> <span><span>(int * <a href="../index.html#type-t">t</a>)</span> option</span></span></code></div><div class="spec-doc"><p>Decode string, and also return how many bytes were consumed.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">idx</span> <p>initial index (default 0)</p></li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_string_exn"><a href="#val-of_string_exn" class="anchor"></a><code><span><span class="keyword">val</span> of_string_exn : <span>?idx:int <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> int * <a href="../index.html#type-t">t</a></span></code></div><div class="spec-doc"><p>Parse string.</p><ul class="at-tags"><li class="raises"><span class="at-tag">raises</span> <span class="value">Error.Error</span> <p>if the string is not valid bencode.</p></li></ul></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Encode (sidekick.Sidekick_bencode.Encode)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_bencode</a> &#x00BB; Encode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode.Encode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-to_buffer" class="anchored"><a href="#val-to_buffer" class="anchor"></a><code><span><span class="keyword">val</span> to_buffer : <span><span class="xref-unresolved">Stdlib</span>.Buffer.t <span class="arrow">&#45;&gt;</span></span> <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-to_string" class="anchored"><a href="#val-to_string" class="anchor"></a><code><span><span class="keyword">val</span> to_string : <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> string</span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Encode (sidekick.Sidekick_bencode.Encode)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_bencode</a> &#x00BB; Encode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode.Encode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-to_buffer"><a href="#val-to_buffer" class="anchor"></a><code><span><span class="keyword">val</span> to_buffer : <span><span class="xref-unresolved">Stdlib</span>.Buffer.t <span class="arrow">&#45;&gt;</span></span> <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_string"><a href="#val-to_string" class="anchor"></a><code><span><span class="keyword">val</span> to_string : <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> string</span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_bencode (sidekick.Sidekick_bencode)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_bencode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../Sidekick_util/Ser_value/index.html#type-t">Sidekick_util.Ser_value.t</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Encode" class="anchored"><a href="#module-Encode" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Encode/index.html">Encode</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Decode" class="anchored"><a href="#module-Decode" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Decode/index.html">Decode</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_bencode (sidekick.Sidekick_bencode)</title><link rel="stylesheet" href="../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">sidekick</a> &#x00BB; Sidekick_bencode</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_bencode</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <a href="../Sidekick_util/Ser_value/index.html#type-t">Sidekick_util.Ser_value.t</a></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Encode"><a href="#module-Encode" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Encode/index.html">Encode</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Decode"><a href="#module-Decode" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Decode/index.html">Decode</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Handler_action (sidekick.Sidekick_cc.CC.Handler_action)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Handler_action</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Handler_action</span></code></h1><p>Handler Actions</p><p>Actions that can be scheduled by event handlers.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><table><tr id="type-t.Act_merge" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_merge" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_merge</span> <span class="keyword">of</span> <a href="../../E_node/index.html#type-t">E_node.t</a> * <a href="../../E_node/index.html#type-t">E_node.t</a> * <a href="../../Expl/index.html#type-t">Expl.t</a></span></code></td></tr><tr id="type-t.Act_propagate" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> <a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> * <a href="../index.html#type-propagation_reason">propagation_reason</a></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-conflict" class="anchored"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><table><tr id="type-conflict.Conflict" class="anchored"><td class="def variant constructor"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <a href="../../Expl/index.html#type-t">Expl.t</a></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-or_conflict" class="anchored"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>( <span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Actions or conflict scheduled by an event handler.</p><ul><li><code>Ok acts</code> is a list of merges and propagations</li><li><code>Error confl</code> is a conflict to resolve.</li></ul></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Handler_action (sidekick.Sidekick_cc.CC.Handler_action)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Handler_action</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Handler_action</span></code></h1><p>Handler Actions</p><p>Actions that can be scheduled by event handlers.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><ol><li id="type-t.Act_merge" class="def variant constructor anchored"><a href="#type-t.Act_merge" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_merge</span> <span class="keyword">of</span> <a href="../../E_node/index.html#type-t">E_node.t</a> * <a href="../../E_node/index.html#type-t">E_node.t</a> * <a href="../../Expl/index.html#type-t">Expl.t</a></span></code></li><li id="type-t.Act_propagate" class="def variant constructor anchored"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> <a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> * <a href="../index.html#type-propagation_reason">propagation_reason</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-conflict"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><ol><li id="type-conflict.Conflict" class="def variant constructor anchored"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <a href="../../Expl/index.html#type-t">Expl.t</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-or_conflict"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>(<span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a>)</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Actions or conflict scheduled by an event handler.</p><ul><li><code>Ok acts</code> is a list of merges and propagations</li><li><code>Error confl</code> is a conflict to resolve.</li></ul></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>_ (sidekick.Sidekick_cc.CC.Make.1-_)</title><link rel="stylesheet" href="../../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">CC</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; 1-_</nav><header class="odoc-preamble"><h1>Parameter <code><span>Make.1-_</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-view_as_cc" class="anchored"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>_ (sidekick.Sidekick_cc.CC.Make._)</title><link rel="stylesheet" href="../../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">CC</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; _</nav><header class="odoc-preamble"><h1>Parameter <code><span>Make._</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-view_as_cc"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>

View file

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (sidekick.Sidekick_cc.CC.Make)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Make</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter" id="argument-1-_" class="anchored"><a href="#argument-1-_" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="argument-1-_/index.html">_</a></span><span> : <a href="../module-type-ARG/index.html">ARG</a></span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (sidekick.Sidekick_cc.CC.Make)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Make</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter anchored" id="argument-1-_"><a href="#argument-1-_" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="argument-1-_/index.html">_</a></span><span> : <a href="../module-type-ARG/index.html">ARG</a></span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>?stat:<a href="../../../Sidekick_util/Stat/index.html#type-t">Sidekick_util.Stat.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?size:<span>[ `Small <span>| `Big</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a> <span class="arrow">&#45;&gt;</span></span>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Result_action (sidekick.Sidekick_cc.CC.Result_action)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Result_action</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Result_action</span></code></h1><p>Result Actions.</p><p>Actions returned by the congruence closure after calling <a href="../index.html#val-check"><code>check</code></a>.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><table><tr id="type-t.Act_propagate" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> </span><span>{</span></code><table><tr id="type-t.lit" class="anchored"><td class="def record field"><a href="#type-t.lit" class="anchor"></a><code><span>lit : <a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a>;</span></code></td></tr><tr id="type-t.reason" class="anchored"><td class="def record field"><a href="#type-t.reason" class="anchor"></a><code><span>reason : <a href="../index.html#type-propagation_reason">propagation_reason</a>;</span></code></td></tr></table><code><span>}</span></code></td><td class="def-doc"><span class="comment-delim">(*</span><p><code>propagate (Lit.t, reason)</code> declares that <code>reason() =&gt; Lit.t</code> is a tautology.</p><ul><li><code>reason()</code> should return a list of literals that are currently true, as well as a proof.</li><li><code>Lit.t</code> should be a literal of interest (see <code>S</code>.set_as_lit).</li></ul><p>This function might never be called, a congruence closure has the right to not propagate and only trigger conflicts.</p><span class="comment-delim">*)</span></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-conflict" class="anchored"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><table><tr id="type-conflict.Conflict" class="anchored"><td class="def variant constructor"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <span><a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> * <a href="../../../Sidekick_proof/Step/index.html#type-id">Sidekick_proof.Step.id</a></span></code></td><td class="def-doc"><span class="comment-delim">(*</span><p><code>raise_conflict (c,pr)</code> declares that <code>c</code> is a tautology of the theory of congruence.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">pr</span> <p>the proof of <code>c</code> being a tautology</p></li></ul><span class="comment-delim">*)</span></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-or_conflict" class="anchored"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>( <span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Result_action (sidekick.Sidekick_cc.CC.Result_action)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; Result_action</nav><header class="odoc-preamble"><h1>Module <code><span>CC.Result_action</span></code></h1><p>Result Actions.</p><p>Actions returned by the congruence closure after calling <a href="../index.html#val-check"><code>check</code></a>.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><ol><li id="type-t.Act_propagate" class="def variant constructor anchored"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> </span><span>{</span></code><ol><li id="type-t.lit" class="def record field anchored"><a href="#type-t.lit" class="anchor"></a><code><span>lit : <a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a>;</span></code></li><li id="type-t.reason" class="def record field anchored"><a href="#type-t.reason" class="anchor"></a><code><span>reason : <a href="../index.html#type-propagation_reason">propagation_reason</a>;</span></code></li></ol><code><span>}</span></code><div class="def-doc"><span class="comment-delim">(*</span><p><code>propagate (Lit.t, reason)</code> declares that <code>reason() =&gt; Lit.t</code> is a tautology.</p><ul><li><code>reason()</code> should return a list of literals that are currently true, as well as a proof.</li><li><code>Lit.t</code> should be a literal of interest (see <code>S</code>.set_as_lit).</li></ul><p>This function might never be called, a congruence closure has the right to not propagate and only trigger conflicts.</p><span class="comment-delim">*)</span></div></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-conflict"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><ol><li id="type-conflict.Conflict" class="def variant constructor anchored"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <span><a href="../../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> * <a href="../../../Sidekick_proof/Step/index.html#type-id">Sidekick_proof.Step.id</a></span></code><div class="def-doc"><span class="comment-delim">(*</span><p><code>raise_conflict (c,pr)</code> declares that <code>c</code> is a tautology of the theory of congruence.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">pr</span> <p>the proof of <code>c</code> being a tautology</p></li></ul><span class="comment-delim">*)</span></div></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-or_conflict"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>(<span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a>)</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ARG (sidekick.Sidekick_cc.CC.ARG)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; ARG</nav><header class="odoc-preamble"><h1>Module type <code><span>CC.ARG</span></code></h1><p>Arguments to a congruence closure's implementation</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-view_as_cc" class="anchored"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ARG (sidekick.Sidekick_cc.CC.ARG)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; ARG</nav><header class="odoc-preamble"><h1>Module type <code><span>CC.ARG</span></code></h1><p>Arguments to a congruence closure's implementation</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-view_as_cc"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>

View file

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>BUILD (sidekick.Sidekick_cc.CC.BUILD)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; BUILD</nav><header class="odoc-preamble"><h1>Module type <code><span>CC.BUILD</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>BUILD (sidekick.Sidekick_cc.CC.BUILD)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">CC</a> &#x00BB; BUILD</nav><header class="odoc-preamble"><h1>Module type <code><span>CC.BUILD</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>?stat:<a href="../../../Sidekick_util/Stat/index.html#type-t">Sidekick_util.Stat.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?size:<span>[ `Small <span>| `Big</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a> <span class="arrow">&#45;&gt;</span></span>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Internal_ (sidekick.Sidekick_cc.E_node.Internal_)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">E_node</a> &#x00BB; Internal_</nav><header class="odoc-preamble"><h1>Module <code><span>E_node.Internal_</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-iter_class_" class="anchored"><a href="#val-iter_class_" class="anchor"></a><code><span><span class="keyword">val</span> iter_class_ : <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../index.html#type-t">t</a> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-make" class="anchored"><a href="#val-make" class="anchor"></a><code><span><span class="keyword">val</span> make : <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../index.html#type-t">t</a></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Internal_ (sidekick.Sidekick_cc.E_node.Internal_)</title><link rel="stylesheet" href="../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">E_node</a> &#x00BB; Internal_</nav><header class="odoc-preamble"><h1>Module <code><span>E_node.Internal_</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-iter_class_"><a href="#val-iter_class_" class="anchor"></a><code><span><span class="keyword">val</span> iter_class_ : <span><a href="../index.html#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../index.html#type-t">t</a> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-make"><a href="#val-make" class="anchor"></a><code><span><span class="keyword">val</span> make : <span><a href="../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../index.html#type-t">t</a></span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Expl (sidekick.Sidekick_cc.Expl)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Expl</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Expl</span></code></h1><p>Explanations</p><p>Explanations are specialized proofs, created by the congruence closure when asked to justify why two terms are equal.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec value" id="val-mk_merge" class="anchored"><a href="#val-mk_merge" class="anchor"></a><code><span><span class="keyword">val</span> mk_merge : <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: the nodes were explicitly merged</p></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_merge_t" class="anchored"><a href="#val-mk_merge_t" class="anchor"></a><code><span><span class="keyword">val</span> mk_merge_t : <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: the terms were explicitly merged</p></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_lit" class="anchored"><a href="#val-mk_lit" class="anchor"></a><code><span><span class="keyword">val</span> mk_lit : <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: we merged <code>t</code> and <code>u</code> because of literal <code>t=u</code>, or we merged <code>t</code> and <code>true</code> because of literal <code>t</code>, or <code>t</code> and <code>false</code> because of literal <code>¬t</code></p></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_list" class="anchored"><a href="#val-mk_list" class="anchor"></a><code><span><span class="keyword">val</span> mk_list : <span><span><a href="#type-t">t</a> list</span> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Conjunction of explanations</p></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_congruence" class="anchored"><a href="#val-mk_congruence" class="anchor"></a><code><span><span class="keyword">val</span> mk_congruence : <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-mk_theory" class="anchored"><a href="#val-mk_theory" class="anchor"></a><code><span><span class="keyword">val</span> mk_theory :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Expl (sidekick.Sidekick_cc.Expl)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Expl</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Expl</span></code></h1><p>Explanations</p><p>Explanations are specialized proofs, created by the congruence closure when asked to justify why two terms are equal.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_merge"><a href="#val-mk_merge" class="anchor"></a><code><span><span class="keyword">val</span> mk_merge : <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: the nodes were explicitly merged</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_merge_t"><a href="#val-mk_merge_t" class="anchor"></a><code><span><span class="keyword">val</span> mk_merge_t : <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: the terms were explicitly merged</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_lit"><a href="#val-mk_lit" class="anchor"></a><code><span><span class="keyword">val</span> mk_lit : <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Explanation: we merged <code>t</code> and <code>u</code> because of literal <code>t=u</code>, or we merged <code>t</code> and <code>true</code> because of literal <code>t</code>, or <code>t</code> and <code>false</code> because of literal <code>¬t</code></p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_list"><a href="#val-mk_list" class="anchor"></a><code><span><span class="keyword">val</span> mk_list : <span><span><a href="#type-t">t</a> list</span> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Conjunction of explanations</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_congruence"><a href="#val-mk_congruence" class="anchor"></a><code><span><span class="keyword">val</span> mk_congruence : <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mk_theory"><a href="#val-mk_theory" class="anchor"></a><code><span><span class="keyword">val</span> mk_theory :
<span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span><span>(<a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> * <a href="../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> * <span><a href="#type-t">t</a> list</span>)</span> list</span> <span class="arrow">&#45;&gt;</span></span>

View file

@ -1,2 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Handler_action (sidekick.Sidekick_cc.Handler_action)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Handler_action</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Handler_action</span></code></h1><p>Handler Actions</p><p>Actions that can be scheduled by event handlers.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><table><tr id="type-t.Act_merge" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_merge" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_merge</span> <span class="keyword">of</span> <a href="../E_node/index.html#type-t">E_node.t</a> * <a href="../E_node/index.html#type-t">E_node.t</a> * <a href="../Expl/index.html#type-t">Expl.t</a></span></code></td></tr><tr id="type-t.Act_propagate" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> <a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> * <a href="../index.html#type-propagation_reason">propagation_reason</a></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-conflict" class="anchored"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><table><tr id="type-conflict.Conflict" class="anchored"><td class="def variant constructor"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <a href="../Expl/index.html#type-t">Expl.t</a></span></code></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-or_conflict" class="anchored"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>( <span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Actions or conflict scheduled by an event handler.</p><ul><li><code>Ok acts</code> is a list of merges and propagations</li><li><code>Error confl</code> is a conflict to resolve.</li></ul></div></div></div></body></html>

View file

@ -1,2 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>_ (sidekick.Sidekick_cc.Make.1-_)</title><link rel="stylesheet" href="../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../index.html">sidekick</a> &#x00BB; <a href="../../index.html">Sidekick_cc</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; 1-_</nav><header class="odoc-preamble"><h1>Parameter <code><span>Make.1-_</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-view_as_cc" class="anchored"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>

View file

@ -1,7 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (sidekick.Sidekick_cc.Make)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Make</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter" id="argument-1-_" class="anchored"><a href="#argument-1-_" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="argument-1-_/index.html">_</a></span><span> : <a href="../module-type-ARG/index.html">ARG</a></span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>?stat:<a href="../../Sidekick_util/Stat/index.html#type-t">Sidekick_util.Stat.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?size:<span>[ `Small <span>| `Big</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Tracer/class-type-t/index.html">Sidekick_proof.Tracer.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="../index.html#type-t">t</a></span></code></div><div class="spec-doc"><p>Create a new congruence closure.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">term_store</span> <p>used to be able to create new terms. All terms interacting with this congruence closure must belong in this term state as well.</p></li></ul></div></div></div></body></html>

View file

@ -1,10 +1,10 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>M (sidekick.Sidekick_cc.Plugin.Make.1-M)</title><link rel="stylesheet" href="../../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; 1-M</nav><header class="odoc-preamble"><h1>Parameter <code><span>Make.1-M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>Some type with a monoid structure</p></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec type" id="type-state" class="anchored"><a href="#type-state" class="anchor"></a><code><span><span class="keyword">type</span> state</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-state">state</a></span></code></div><div class="spec-doc"><p>Initialize state from the congruence closure</p></div></div><div class="odoc-spec"><div class="spec value" id="val-name" class="anchored"><a href="#val-name" class="anchor"></a><code><span><span class="keyword">val</span> name : string</span></code></div><div class="spec-doc"><p>name of the monoid structure (short)</p></div></div><div class="odoc-spec"><div class="spec value" id="val-of_term" class="anchored"><a href="#val-of_term" class="anchor"></a><code><span><span class="keyword">val</span> of_term :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>M (sidekick.Sidekick_cc.Plugin.Make.M)</title><link rel="stylesheet" href="../../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; M</nav><header class="odoc-preamble"><h1>Parameter <code><span>Make.M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>Some type with a monoid structure</p></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec type anchored" id="type-state"><a href="#type-state" class="anchor"></a><code><span><span class="keyword">type</span> state</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-state">state</a></span></code></div><div class="spec-doc"><p>Initialize state from the congruence closure</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-name"><a href="#val-name" class="anchor"></a><code><span><span class="keyword">val</span> name : string</span></code></div><div class="spec-doc"><p>name of the monoid structure (short)</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_term"><a href="#val-of_term" class="anchor"></a><code><span><span class="keyword">val</span> of_term :
<span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-state">state</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-t">t</a> option</span> * <span><span>(<a href="../../../E_node/index.html#type-t">E_node.t</a> * <a href="#type-t">t</a>)</span> list</span></span></code></div><div class="spec-doc"><p><code>of_term n t</code>, where <code>t</code> is the Term.t annotating node <code>n</code>, must return <code>maybe_m, l</code>, where:</p><ul><li><code>maybe_m = Some m</code> if <code>t</code> has monoid value <code>m</code>; otherwise <code>maybe_m=None</code></li><li><code>l</code> is a list of <code>(u, m_u)</code> where each <code>u</code>'s Term.t is a direct subterm of <code>t</code> and <code>m_u</code> is the monoid value attached to <code>u</code>.</li></ul></div></div><div class="odoc-spec"><div class="spec value" id="val-merge" class="anchored"><a href="#val-merge" class="anchor"></a><code><span><span class="keyword">val</span> merge :
<span><a href="#type-t">t</a> option</span> * <span><span>(<a href="../../../E_node/index.html#type-t">E_node.t</a> * <a href="#type-t">t</a>)</span> list</span></span></code></div><div class="spec-doc"><p><code>of_term n t</code>, where <code>t</code> is the Term.t annotating node <code>n</code>, must return <code>maybe_m, l</code>, where:</p><ul><li><code>maybe_m = Some m</code> if <code>t</code> has monoid value <code>m</code>; otherwise <code>maybe_m=None</code></li><li><code>l</code> is a list of <code>(u, m_u)</code> where each <code>u</code>'s Term.t is a direct subterm of <code>t</code> and <code>m_u</code> is the monoid value attached to <code>u</code>.</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-merge"><a href="#val-merge" class="anchor"></a><code><span><span class="keyword">val</span> merge :
<span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-state">state</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
@ -12,4 +12,4 @@
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Expl/index.html#type-t">Expl.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span>( <a href="#type-t">t</a> * <span><a href="../../../CC/Handler_action/index.html#type-t">CC.Handler_action.t</a> list</span>, <a href="../../../CC/Handler_action/index.html#type-conflict">CC.Handler_action.conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Monoidal combination of two values.</p><p><code>merge cc n1 mon1 n2 mon2 expl</code> returns the result of merging monoid values <code>mon1</code> (for class <code>n1</code>) and <code>mon2</code> (for class <code>n2</code>) when <code>n1</code> and <code>n2</code> are merged with explanation <code>expl</code>.</p><ul class="at-tags"><li class="returns"><span class="at-tag">returns</span> <p><code>Ok mon</code> if the merge is acceptable, annotating the class of <code>n1 n2</code>; or <code>Error expl'</code> if the merge is unsatisfiable. <code>expl'</code> can then be used to trigger a conflict and undo the merge.</p></li></ul></div></div></div></body></html>
<span><span>(<a href="#type-t">t</a> * <span><a href="../../../CC/Handler_action/index.html#type-t">CC.Handler_action.t</a> list</span>, <a href="../../../CC/Handler_action/index.html#type-conflict">CC.Handler_action.conflict</a>)</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Monoidal combination of two values.</p><p><code>merge cc n1 mon1 n2 mon2 expl</code> returns the result of merging monoid values <code>mon1</code> (for class <code>n1</code>) and <code>mon2</code> (for class <code>n2</code>) when <code>n1</code> and <code>n2</code> are merged with explanation <code>expl</code>.</p><ul class="at-tags"><li class="returns"><span class="at-tag">returns</span> <p><code>Ok mon</code> if the merge is acceptable, annotating the class of <code>n1 n2</code>; or <code>Error expl'</code> if the merge is unsatisfiable. <code>expl'</code> can then be used to trigger a conflict and undo the merge.</p></li></ul></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>DYN_PL_FOR_M (sidekick.Sidekick_cc.Plugin.Make.DYN_PL_FOR_M)</title><link rel="stylesheet" href="../../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; DYN_PL_FOR_M</nav><header class="odoc-preamble"><h1>Module type <code><span>Make.DYN_PL_FOR_M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-M" class="anchored"><a href="#module-M" class="anchor"></a><code><span><span class="keyword">module</span> M</span><span> = <a href="../argument-1-M/index.html">M</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-DYN_BACKTRACKABLE/index.html">Sidekick_sigs.DYN_BACKTRACKABLE</a></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-n_levels" class="anchored"><a href="#val-n_levels" class="anchor"></a><code><span><span class="keyword">val</span> n_levels : <span>unit <span class="arrow">&#45;&gt;</span></span> int</span></code></div><div class="spec-doc"><p>Number of levels</p></div></div><div class="odoc-spec"><div class="spec value" id="val-push_level" class="anchored"><a href="#val-push_level" class="anchor"></a><code><span><span class="keyword">val</span> push_level : <span>unit <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Push a backtracking point</p></div></div><div class="odoc-spec"><div class="spec value" id="val-pop_levels" class="anchored"><a href="#val-pop_levels" class="anchor"></a><code><span><span class="keyword">val</span> pop_levels : <span>int <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>pop_levels n</code> removes <code>n</code> levels</p></div></div></details></div><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span>unit <span class="xref-unresolved">Sidekick_cc__</span>.Types_.Fmt.printer</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-mem" class="anchored"><a href="#val-mem" class="anchor"></a><code><span><span class="keyword">val</span> mem : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Does the CC E_node.t have a monoid value?</p></div></div><div class="odoc-spec"><div class="spec value" id="val-get" class="anchored"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../argument-1-M/index.html#type-t">M.t</a> option</span></span></code></div><div class="spec-doc"><p>Get monoid value for this CC E_node.t, if any</p></div></div><div class="odoc-spec"><div class="spec value" id="val-iter_all" class="anchored"><a href="#val-iter_all" class="anchor"></a><code><span><span class="keyword">val</span> iter_all : <span><span>(<a href="../../../CC/index.html#type-repr">CC.repr</a> * <a href="../argument-1-M/index.html#type-t">M.t</a>)</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>DYN_PL_FOR_M (sidekick.Sidekick_cc.Plugin.Make.DYN_PL_FOR_M)</title><link rel="stylesheet" href="../../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">Make</a> &#x00BB; DYN_PL_FOR_M</nav><header class="odoc-preamble"><h1>Module type <code><span>Make.DYN_PL_FOR_M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-M"><a href="#module-M" class="anchor"></a><code><span><span class="keyword">module</span> M</span><span> = <a href="../argument-1-M/index.html">M</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-DYN_BACKTRACKABLE/index.html">Sidekick_sigs.DYN_BACKTRACKABLE</a></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-n_levels"><a href="#val-n_levels" class="anchor"></a><code><span><span class="keyword">val</span> n_levels : <span>unit <span class="arrow">&#45;&gt;</span></span> int</span></code></div><div class="spec-doc"><p>Number of levels</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-push_level"><a href="#val-push_level" class="anchor"></a><code><span><span class="keyword">val</span> push_level : <span>unit <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Push a backtracking point</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pop_levels"><a href="#val-pop_levels" class="anchor"></a><code><span><span class="keyword">val</span> pop_levels : <span>int <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>pop_levels n</code> removes <code>n</code> levels</p></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span>unit <span class="xref-unresolved">Sidekick_cc__</span>.Types_.Fmt.printer</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mem"><a href="#val-mem" class="anchor"></a><code><span><span class="keyword">val</span> mem : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Does the CC E_node.t have a monoid value?</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../argument-1-M/index.html#type-t">M.t</a> option</span></span></code></div><div class="spec-doc"><p>Get monoid value for this CC E_node.t, if any</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-iter_all"><a href="#val-iter_all" class="anchor"></a><code><span><span class="keyword">val</span> iter_all : <span><span>(<a href="../../../CC/index.html#type-repr">CC.repr</a> * <a href="../argument-1-M/index.html#type-t">M.t</a>)</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Plugin (sidekick.Sidekick_cc.Plugin)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Plugin</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Plugin</span></code></h1><p>Congruence Closure Plugin</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type" id="module-type-EXTENDED_PLUGIN_BUILDER" class="anchored"><a href="#module-type-EXTENDED_PLUGIN_BUILDER" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-EXTENDED_PLUGIN_BUILDER/index.html">EXTENDED_PLUGIN_BUILDER</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Make" class="anchored"><a href="#module-Make" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Make/index.html">Make</a></span><span> (<a href="Make/argument-1-M/index.html">M</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span>) : <a href="module-type-EXTENDED_PLUGIN_BUILDER/index.html">EXTENDED_PLUGIN_BUILDER</a> <span class="keyword">with</span> <span><span class="keyword">module</span> <a href="module-type-EXTENDED_PLUGIN_BUILDER/M/index.html">M</a> = <a href="Make/argument-1-M/index.html">M</a></span></span></code></div><div class="spec-doc"><p>Create a plugin builder from the given per-class monoid</p></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Plugin (sidekick.Sidekick_cc.Plugin)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Plugin</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Plugin</span></code></h1><p>Congruence Closure Plugin</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-EXTENDED_PLUGIN_BUILDER"><a href="#module-type-EXTENDED_PLUGIN_BUILDER" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-EXTENDED_PLUGIN_BUILDER/index.html">EXTENDED_PLUGIN_BUILDER</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Make"><a href="#module-Make" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Make/index.html">Make</a></span><span> (<a href="Make/argument-1-M/index.html">M</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span>) : <a href="module-type-EXTENDED_PLUGIN_BUILDER/index.html">EXTENDED_PLUGIN_BUILDER</a> <span class="keyword">with</span> <span><span class="keyword">module</span> <a href="module-type-EXTENDED_PLUGIN_BUILDER/M/index.html">M</a> = <a href="Make/argument-1-M/index.html">M</a></span></span></code></div><div class="spec-doc"><p>Create a plugin builder from the given per-class monoid</p></div></div></div></body></html>

View file

@ -1,10 +1,10 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>M (sidekick.Sidekick_cc.Plugin.EXTENDED_PLUGIN_BUILDER.M)</title><link rel="stylesheet" href="../../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">EXTENDED_PLUGIN_BUILDER</a> &#x00BB; M</nav><header class="odoc-preamble"><h1>Module <code><span>EXTENDED_PLUGIN_BUILDER.M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>Some type with a monoid structure</p></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec type" id="type-state" class="anchored"><a href="#type-state" class="anchor"></a><code><span><span class="keyword">type</span> state</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-state">state</a></span></code></div><div class="spec-doc"><p>Initialize state from the congruence closure</p></div></div><div class="odoc-spec"><div class="spec value" id="val-name" class="anchored"><a href="#val-name" class="anchor"></a><code><span><span class="keyword">val</span> name : string</span></code></div><div class="spec-doc"><p>name of the monoid structure (short)</p></div></div><div class="odoc-spec"><div class="spec value" id="val-of_term" class="anchored"><a href="#val-of_term" class="anchor"></a><code><span><span class="keyword">val</span> of_term :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>M (sidekick.Sidekick_cc.Plugin.EXTENDED_PLUGIN_BUILDER.M)</title><link rel="stylesheet" href="../../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">EXTENDED_PLUGIN_BUILDER</a> &#x00BB; M</nav><header class="odoc-preamble"><h1>Module <code><span>EXTENDED_PLUGIN_BUILDER.M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>Some type with a monoid structure</p></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div><div class="odoc-spec"><div class="spec type anchored" id="type-state"><a href="#type-state" class="anchor"></a><code><span><span class="keyword">type</span> state</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-state">state</a></span></code></div><div class="spec-doc"><p>Initialize state from the congruence closure</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-name"><a href="#val-name" class="anchor"></a><code><span><span class="keyword">val</span> name : string</span></code></div><div class="spec-doc"><p>name of the monoid structure (short)</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_term"><a href="#val-of_term" class="anchor"></a><code><span><span class="keyword">val</span> of_term :
<span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-state">state</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../../Sidekick_core/Term/index.html#type-t">Sidekick_core.Term.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-t">t</a> option</span> * <span><span>(<a href="../../../E_node/index.html#type-t">E_node.t</a> * <a href="#type-t">t</a>)</span> list</span></span></code></div><div class="spec-doc"><p><code>of_term n t</code>, where <code>t</code> is the Term.t annotating node <code>n</code>, must return <code>maybe_m, l</code>, where:</p><ul><li><code>maybe_m = Some m</code> if <code>t</code> has monoid value <code>m</code>; otherwise <code>maybe_m=None</code></li><li><code>l</code> is a list of <code>(u, m_u)</code> where each <code>u</code>'s Term.t is a direct subterm of <code>t</code> and <code>m_u</code> is the monoid value attached to <code>u</code>.</li></ul></div></div><div class="odoc-spec"><div class="spec value" id="val-merge" class="anchored"><a href="#val-merge" class="anchor"></a><code><span><span class="keyword">val</span> merge :
<span><a href="#type-t">t</a> option</span> * <span><span>(<a href="../../../E_node/index.html#type-t">E_node.t</a> * <a href="#type-t">t</a>)</span> list</span></span></code></div><div class="spec-doc"><p><code>of_term n t</code>, where <code>t</code> is the Term.t annotating node <code>n</code>, must return <code>maybe_m, l</code>, where:</p><ul><li><code>maybe_m = Some m</code> if <code>t</code> has monoid value <code>m</code>; otherwise <code>maybe_m=None</code></li><li><code>l</code> is a list of <code>(u, m_u)</code> where each <code>u</code>'s Term.t is a direct subterm of <code>t</code> and <code>m_u</code> is the monoid value attached to <code>u</code>.</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-merge"><a href="#val-merge" class="anchor"></a><code><span><span class="keyword">val</span> merge :
<span><a href="../../../CC/index.html#type-t">CC.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-state">state</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
@ -12,4 +12,4 @@
<span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../../Expl/index.html#type-t">Expl.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span>( <a href="#type-t">t</a> * <span><a href="../../../CC/Handler_action/index.html#type-t">CC.Handler_action.t</a> list</span>, <a href="../../../CC/Handler_action/index.html#type-conflict">CC.Handler_action.conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Monoidal combination of two values.</p><p><code>merge cc n1 mon1 n2 mon2 expl</code> returns the result of merging monoid values <code>mon1</code> (for class <code>n1</code>) and <code>mon2</code> (for class <code>n2</code>) when <code>n1</code> and <code>n2</code> are merged with explanation <code>expl</code>.</p><ul class="at-tags"><li class="returns"><span class="at-tag">returns</span> <p><code>Ok mon</code> if the merge is acceptable, annotating the class of <code>n1 n2</code>; or <code>Error expl'</code> if the merge is unsatisfiable. <code>expl'</code> can then be used to trigger a conflict and undo the merge.</p></li></ul></div></div></div></body></html>
<span><span>(<a href="#type-t">t</a> * <span><a href="../../../CC/Handler_action/index.html#type-t">CC.Handler_action.t</a> list</span>, <a href="../../../CC/Handler_action/index.html#type-conflict">CC.Handler_action.conflict</a>)</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p>Monoidal combination of two values.</p><p><code>merge cc n1 mon1 n2 mon2 expl</code> returns the result of merging monoid values <code>mon1</code> (for class <code>n1</code>) and <code>mon2</code> (for class <code>n2</code>) when <code>n1</code> and <code>n2</code> are merged with explanation <code>expl</code>.</p><ul class="at-tags"><li class="returns"><span class="at-tag">returns</span> <p><code>Ok mon</code> if the merge is acceptable, annotating the class of <code>n1 n2</code>; or <code>Error expl'</code> if the merge is unsatisfiable. <code>expl'</code> can then be used to trigger a conflict and undo the merge.</p></li></ul></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>DYN_PL_FOR_M (sidekick.Sidekick_cc.Plugin.EXTENDED_PLUGIN_BUILDER.DYN_PL_FOR_M)</title><link rel="stylesheet" href="../../../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">EXTENDED_PLUGIN_BUILDER</a> &#x00BB; DYN_PL_FOR_M</nav><header class="odoc-preamble"><h1>Module type <code><span>EXTENDED_PLUGIN_BUILDER.DYN_PL_FOR_M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module" id="module-M" class="anchored"><a href="#module-M" class="anchor"></a><code><span><span class="keyword">module</span> M</span><span> = <a href="../M/index.html">M</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-DYN_BACKTRACKABLE/index.html">Sidekick_sigs.DYN_BACKTRACKABLE</a></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-n_levels" class="anchored"><a href="#val-n_levels" class="anchor"></a><code><span><span class="keyword">val</span> n_levels : <span>unit <span class="arrow">&#45;&gt;</span></span> int</span></code></div><div class="spec-doc"><p>Number of levels</p></div></div><div class="odoc-spec"><div class="spec value" id="val-push_level" class="anchored"><a href="#val-push_level" class="anchor"></a><code><span><span class="keyword">val</span> push_level : <span>unit <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Push a backtracking point</p></div></div><div class="odoc-spec"><div class="spec value" id="val-pop_levels" class="anchored"><a href="#val-pop_levels" class="anchor"></a><code><span><span class="keyword">val</span> pop_levels : <span>int <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>pop_levels n</code> removes <code>n</code> levels</p></div></div></details></div><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span>unit <span class="xref-unresolved">Sidekick_cc__</span>.Types_.Fmt.printer</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-mem" class="anchored"><a href="#val-mem" class="anchor"></a><code><span><span class="keyword">val</span> mem : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Does the CC E_node.t have a monoid value?</p></div></div><div class="odoc-spec"><div class="spec value" id="val-get" class="anchored"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../M/index.html#type-t">M.t</a> option</span></span></code></div><div class="spec-doc"><p>Get monoid value for this CC E_node.t, if any</p></div></div><div class="odoc-spec"><div class="spec value" id="val-iter_all" class="anchored"><a href="#val-iter_all" class="anchor"></a><code><span><span class="keyword">val</span> iter_all : <span><span>(<a href="../../../CC/index.html#type-repr">CC.repr</a> * <a href="../M/index.html#type-t">M.t</a>)</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>DYN_PL_FOR_M (sidekick.Sidekick_cc.Plugin.EXTENDED_PLUGIN_BUILDER.DYN_PL_FOR_M)</title><link rel="stylesheet" href="../../../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../../../index.html">sidekick</a> &#x00BB; <a href="../../../index.html">Sidekick_cc</a> &#x00BB; <a href="../../index.html">Plugin</a> &#x00BB; <a href="../index.html">EXTENDED_PLUGIN_BUILDER</a> &#x00BB; DYN_PL_FOR_M</nav><header class="odoc-preamble"><h1>Module type <code><span>EXTENDED_PLUGIN_BUILDER.DYN_PL_FOR_M</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-M"><a href="#module-M" class="anchor"></a><code><span><span class="keyword">module</span> M</span><span> = <a href="../M/index.html">M</a></span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../../Sidekick_sigs/module-type-DYN_BACKTRACKABLE/index.html">Sidekick_sigs.DYN_BACKTRACKABLE</a></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-n_levels"><a href="#val-n_levels" class="anchor"></a><code><span><span class="keyword">val</span> n_levels : <span>unit <span class="arrow">&#45;&gt;</span></span> int</span></code></div><div class="spec-doc"><p>Number of levels</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-push_level"><a href="#val-push_level" class="anchor"></a><code><span><span class="keyword">val</span> push_level : <span>unit <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p>Push a backtracking point</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pop_levels"><a href="#val-pop_levels" class="anchor"></a><code><span><span class="keyword">val</span> pop_levels : <span>int <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>pop_levels n</code> removes <code>n</code> levels</p></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span>unit <span class="xref-unresolved">Sidekick_cc__</span>.Types_.Fmt.printer</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mem"><a href="#val-mem" class="anchor"></a><code><span><span class="keyword">val</span> mem : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div><div class="spec-doc"><p>Does the CC E_node.t have a monoid value?</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get : <span><a href="../../../E_node/index.html#type-t">E_node.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../M/index.html#type-t">M.t</a> option</span></span></code></div><div class="spec-doc"><p>Get monoid value for this CC E_node.t, if any</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-iter_all"><a href="#val-iter_all" class="anchor"></a><code><span><span class="keyword">val</span> iter_all : <span><span>(<a href="../../../CC/index.html#type-repr">CC.repr</a> * <a href="../M/index.html#type-t">M.t</a>)</span> <span class="xref-unresolved">Iter</span>.t</span></span></code></div></div></div></body></html>

View file

@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Resolved_expl (sidekick.Sidekick_cc.Resolved_expl)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Resolved_expl</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Resolved_expl</span></code></h1><p>Resolved explanations.</p><p>The congruence closure keeps explanations for why terms are in the same class. However these are represented in a compact, cheap form. To use these explanations we need to <b>resolve</b> them into a resolved explanation, typically a list of literals that are true in the current trail and are responsible for merges.</p><p>However, we can also have merged classes because they have the same value in the current model.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>{</span></code><table><tr id="type-t.lits" class="anchored"><td class="def record field"><a href="#type-t.lits" class="anchor"></a><code><span>lits : <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span>;</span></code></td></tr><tr id="type-t.pr" class="anchored"><td class="def record field"><a href="#type-t.pr" class="anchor"></a><code><span>pr : <a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Sidekick_proof.Pterm.delayed</a>;</span></code></td></tr></table><code><span>}</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Resolved_expl (sidekick.Sidekick_cc.Resolved_expl)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Resolved_expl</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Resolved_expl</span></code></h1><p>Resolved explanations.</p><p>The congruence closure keeps explanations for why terms are in the same class. However these are represented in a compact, cheap form. To use these explanations we need to <b>resolve</b> them into a resolved explanation, typically a list of literals that are true in the current trail and are responsible for merges.</p><p>However, we can also have merged classes because they have the same value in the current model.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>{</span></code><ol><li id="type-t.lits" class="def record field anchored"><a href="#type-t.lits" class="anchor"></a><code><span>lits : <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span>;</span></code></li><li id="type-t.pr" class="def record field anchored"><a href="#type-t.pr" class="anchor"></a><code><span>pr : <a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Sidekick_proof.Pterm.delayed</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></div></body></html>

View file

@ -1,2 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Result_action (sidekick.Sidekick_cc.Result_action)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Result_action</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Result_action</span></code></h1><p>Result Actions.</p><p>Actions returned by the congruence closure after calling <a href="../index.html#val-check"><code>check</code></a>.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span></code><table><tr id="type-t.Act_propagate" class="anchored"><td class="def variant constructor"><a href="#type-t.Act_propagate" class="anchor"></a><code><span>| </span><span><span class="constructor">Act_propagate</span> <span class="keyword">of</span> </span><span>{</span></code><table><tr id="type-t.lit" class="anchored"><td class="def record field"><a href="#type-t.lit" class="anchor"></a><code><span>lit : <a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a>;</span></code></td></tr><tr id="type-t.reason" class="anchored"><td class="def record field"><a href="#type-t.reason" class="anchor"></a><code><span>reason : <a href="../index.html#type-propagation_reason">propagation_reason</a>;</span></code></td></tr></table><code><span>}</span></code></td><td class="def-doc"><span class="comment-delim">(*</span><p><code>propagate (Lit.t, reason)</code> declares that <code>reason() =&gt; Lit.t</code> is a tautology.</p><ul><li><code>reason()</code> should return a list of literals that are currently true, as well as a proof.</li><li><code>Lit.t</code> should be a literal of interest (see <code>S</code>.set_as_lit).</li></ul><p>This function might never be called, a congruence closure has the right to not propagate and only trigger conflicts.</p><span class="comment-delim">*)</span></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-conflict" class="anchored"><a href="#type-conflict" class="anchor"></a><code><span><span class="keyword">type</span> conflict</span><span> = </span></code><table><tr id="type-conflict.Conflict" class="anchored"><td class="def variant constructor"><a href="#type-conflict.Conflict" class="anchor"></a><code><span>| </span><span><span class="constructor">Conflict</span> <span class="keyword">of</span> <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span> * <a href="../../Sidekick_proof/Step/index.html#type-id">Sidekick_proof.Step.id</a></span></code></td><td class="def-doc"><span class="comment-delim">(*</span><p><code>raise_conflict (c,pr)</code> declares that <code>c</code> is a tautology of the theory of congruence.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">pr</span> <p>the proof of <code>c</code> being a tautology</p></li></ul><span class="comment-delim">*)</span></td></tr></table></div></div><div class="odoc-spec"><div class="spec type" id="type-or_conflict" class="anchored"><a href="#type-or_conflict" class="anchor"></a><code><span><span class="keyword">type</span> or_conflict</span><span> = <span><span>( <span><a href="#type-t">t</a> list</span>, <a href="#type-conflict">conflict</a> )</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div></div></div></body></html>

View file

@ -1,9 +1,9 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Signature (sidekick.Sidekick_cc.Signature)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Signature</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Signature</span></code></h1><p>A signature is a shallow term shape where immediate subterms are representative</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> =
<span><span>( <a href="../../Sidekick_core_logic/Const/index.html#type-t">Sidekick_core.Const.t</a>,
<span class="xref-unresolved">Sidekick_cc__Types_.e_node</span>,
<span><span class="xref-unresolved">Sidekick_cc__Types_.e_node</span> list</span> )</span>
<a href="../../Sidekick_core/CC_view/index.html#type-t">Sidekick_core.CC_view.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-equal" class="anchored"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-hash" class="anchored"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Signature (sidekick.Sidekick_cc.Signature)</title><link rel="stylesheet" href="../../../_odoc_support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../_odoc_support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Signature</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Signature</span></code></h1><p>A signature is a shallow term shape where immediate subterms are representative</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> =
<span><span>(<a href="../../Sidekick_core_logic/Const/index.html#type-t">Sidekick_core.Const.t</a>,
<span class="xref-unresolved">Sidekick_cc__.Types_.e_node</span>,
<span><span class="xref-unresolved">Sidekick_cc__.Types_.e_node</span> list</span>)</span>
<a href="../../Sidekick_core/CC_view/index.html#type-t">Sidekick_core.CC_view.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-hash"><a href="#val-hash" class="anchor"></a><code><span><span class="keyword">val</span> hash : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp :
<span><span class="xref-unresolved">Sidekick_cc__</span>.Types_.Fmt.t <span class="arrow">&#45;&gt;</span></span>
<span><span><span>( <a href="../../Sidekick_core_logic/Const/index.html#type-t">Sidekick_core.Const.t</a>, <a href="../E_node/index.html#type-t">E_node.t</a>, <span><a href="../E_node/index.html#type-t">E_node.t</a> list</span> )</span> <a href="../../Sidekick_core/CC_view/index.html#type-t">Sidekick_core.CC_view.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span><span><span>(<a href="../../Sidekick_core_logic/Const/index.html#type-t">Sidekick_core.Const.t</a>, <a href="../E_node/index.html#type-t">E_node.t</a>, <span><a href="../E_node/index.html#type-t">E_node.t</a> list</span>)</span> <a href="../../Sidekick_core/CC_view/index.html#type-t">Sidekick_core.CC_view.t</a></span> <span class="arrow">&#45;&gt;</span></span>
unit</span></code></div></div></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,2 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ARG (sidekick.Sidekick_cc.ARG)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; ARG</nav><header class="odoc-preamble"><h1>Module type <code><span>Sidekick_cc.ARG</span></code></h1><p>Arguments to a congruence closure's implementation</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-view_as_cc" class="anchored"><a href="#val-view_as_cc" class="anchor"></a><code><span><span class="keyword">val</span> view_as_cc : <a href="../index.html#type-view_as_cc">view_as_cc</a></span></code></div><div class="spec-doc"><p>View the Term.t through the lens of the congruence closure</p></div></div></div></body></html>

View file

@ -1,7 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>BUILD (sidekick.Sidekick_cc.BUILD)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.1.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; BUILD</nav><header class="odoc-preamble"><h1>Module type <code><span>Sidekick_cc.BUILD</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>?stat:<a href="../../Sidekick_util/Stat/index.html#type-t">Sidekick_util.Stat.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>?size:<span>[ `Small <span>| `Big</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_core/Term/index.html#type-store">Sidekick_core.Term.store</a> <span class="arrow">&#45;&gt;</span></span>
<span><a href="../../Sidekick_proof/Tracer/class-type-t/index.html">Sidekick_proof.Tracer.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="../index.html#type-t">t</a></span></code></div><div class="spec-doc"><p>Create a new congruence closure.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">term_store</span> <p>used to be able to create new terms. All terms interacting with this congruence closure must belong in this term state as well.</p></li></ul></div></div></div></body></html>

Some files were not shown because too many files have changed in this diff Show more