-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathAbstract-Constraint.html
4 lines (4 loc) · 16.9 KB
/
Abstract-Constraint.html
1
2
3
4
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Abstract.Constraint</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Abstract-Constraint.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Abstract.Constraint.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">verigraph-1.1.1: Software specification and verification tool based on graph rewriting.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Abstract.Constraint</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span> <a href="#t:AtomicConstraint">AtomicConstraint</a> m = <a href="#v:AtomicConstraint">AtomicConstraint</a> {<ul class="subs"><li><a href="#v:name">name</a> :: <a href="../base-4.9.1.0/Data-String.html#t:String">String</a></li><li><a href="#v:morphism">morphism</a> :: m</li><li><a href="#v:positive">positive</a> :: <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li></ul>}</li><li class="src short"><a href="#v:buildNamedAtomicConstraint">buildNamedAtomicConstraint</a> :: <a href="../base-4.9.1.0/Data-String.html#t:String">String</a> -> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m</li><li class="src short"><a href="#v:satisfiesAtomicConstraint">satisfiesAtomicConstraint</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:satisfiesAllAtomicConstraints">satisfiesAllAtomicConstraints</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [<a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m] -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Constraint">Constraint</a> m<ul class="subs"><li>= <a href="#v:Atomic">Atomic</a> { <ul class="subs"><li><a href="#v:atomic">atomic</a> :: <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m</li></ul> }</li><li>| <a href="#v:And">And</a> { <ul class="subs"><li><a href="#v:lc">lc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</li><li><a href="#v:rc">rc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</li></ul> }</li><li>| <a href="#v:Or">Or</a> { <ul class="subs"><li><a href="#v:lc">lc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</li><li><a href="#v:rc">rc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</li></ul> }</li><li>| <a href="#v:Not">Not</a> { <ul class="subs"><li><a href="#v:nc">nc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</li></ul> }</li></ul></li><li class="src short"><a href="#v:satisfiesConstraint">satisfiesConstraint</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:satisfiesAllConstraints">satisfiesAllConstraints</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [<a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m] -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:AtomicConstraint" class="def">AtomicConstraint</a> m <a href="src/Abstract.Constraint.html#AtomicConstraint" class="link">Source</a> <a href="#t:AtomicConstraint" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:AtomicConstraint" class="def">AtomicConstraint</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:name" class="def">name</a> :: <a href="../base-4.9.1.0/Data-String.html#t:String">String</a></dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:morphism" class="def">morphism</a> :: m</dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:positive" class="def">positive</a> :: <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty"> </div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:AtomicConstraint" class="caption collapser" onclick="toggleSection('i:AtomicConstraint')">Instances</p><div id="section.i:AtomicConstraint" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:AtomicConstraint:Show:1" class="instance expander" onclick="toggleSection('i:id:AtomicConstraint:Show:1')"></span> <a href="../base-4.9.1.0/Text-Show.html#t:Show">Show</a> m => <a href="../base-4.9.1.0/Text-Show.html#t:Show">Show</a> (<a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m)</span> <a href="src/Abstract.Constraint.html#line-18" class="link">Source</a> <a href="#t:AtomicConstraint" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:AtomicConstraint:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="../base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="../base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m] -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:AtomicConstraint:Valid:2" class="instance expander" onclick="toggleSection('i:id:AtomicConstraint:Valid:2')"></span> <a href="Abstract-Valid.html#t:Valid">Valid</a> m => <a href="Abstract-Valid.html#t:Valid">Valid</a> (<a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m)</span> <a href="src/Abstract.Constraint.html#line-20" class="link">Source</a> <a href="#t:AtomicConstraint" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:AtomicConstraint:Valid:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:isValid">isValid</a> :: <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Valid.html#isValid" class="link">Source</a> <a href="#v:isValid" class="selflink">#</a></p><p class="src"><a href="#v:validate">validate</a> :: <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="Abstract-Valid.html#t:ValidationResult">ValidationResult</a> <a href="src/Abstract.Valid.html#validate" class="link">Source</a> <a href="#v:validate" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:buildNamedAtomicConstraint" class="def">buildNamedAtomicConstraint</a> :: <a href="../base-4.9.1.0/Data-String.html#t:String">String</a> -> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m <a href="src/Abstract.Constraint.html#buildNamedAtomicConstraint" class="link">Source</a> <a href="#v:buildNamedAtomicConstraint" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:satisfiesAtomicConstraint" class="def">satisfiesAtomicConstraint</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Constraint.html#satisfiesAtomicConstraint" class="link">Source</a> <a href="#v:satisfiesAtomicConstraint" class="selflink">#</a></p><div class="doc"><p>Given an object <code>G</code> and a AtomicConstraint <code>a : P -> C</code>, check whether <code>G</code> satisfies the AtomicConstraint <code>a</code></p></div></div><div class="top"><p class="src"><a id="v:satisfiesAllAtomicConstraints" class="def">satisfiesAllAtomicConstraints</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [<a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m] -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Constraint.html#satisfiesAllAtomicConstraints" class="link">Source</a> <a href="#v:satisfiesAllAtomicConstraints" class="selflink">#</a></p><div class="doc"><p>Given an object <code>G</code> and a list of AtomicConstraints <code>a : P -> C</code>, check whether <code>G</code> satisfies the all them</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Constraint" class="def">Constraint</a> m <a href="src/Abstract.Constraint.html#Constraint" class="link">Source</a> <a href="#t:Constraint" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Atomic" class="def">Atomic</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:atomic" class="def">atomic</a> :: <a href="Abstract-Constraint.html#t:AtomicConstraint">AtomicConstraint</a> m</dfn><div class="doc empty"> </div></li></ul></div></td></tr><tr><td class="src"><a id="v:And" class="def">And</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:lc" class="def">lc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:rc" class="def">rc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</dfn><div class="doc empty"> </div></li></ul></div></td></tr><tr><td class="src"><a id="v:Or" class="def">Or</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:lc" class="def">lc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:rc" class="def">rc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</dfn><div class="doc empty"> </div></li></ul></div></td></tr><tr><td class="src"><a id="v:Not" class="def">Not</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:nc" class="def">nc</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m</dfn><div class="doc empty"> </div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:Constraint" class="caption collapser" onclick="toggleSection('i:Constraint')">Instances</p><div id="section.i:Constraint" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Constraint:Show:1" class="instance expander" onclick="toggleSection('i:id:Constraint:Show:1')"></span> <a href="../base-4.9.1.0/Text-Show.html#t:Show">Show</a> m => <a href="../base-4.9.1.0/Text-Show.html#t:Show">Show</a> (<a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m)</span> <a href="src/Abstract.Constraint.html#line-54" class="link">Source</a> <a href="#t:Constraint" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Constraint:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="../base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="../base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m] -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Constraint:Valid:2" class="instance expander" onclick="toggleSection('i:id:Constraint:Valid:2')"></span> <a href="Abstract-Valid.html#t:Valid">Valid</a> m => <a href="Abstract-Valid.html#t:Valid">Valid</a> (<a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m)</span> <a href="src/Abstract.Constraint.html#line-56" class="link">Source</a> <a href="#t:Constraint" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Constraint:Valid:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:isValid">isValid</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Valid.html#isValid" class="link">Source</a> <a href="#v:isValid" class="selflink">#</a></p><p class="src"><a href="#v:validate">validate</a> :: <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="Abstract-Valid.html#t:ValidationResult">ValidationResult</a> <a href="src/Abstract.Valid.html#validate" class="link">Source</a> <a href="#v:validate" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:satisfiesConstraint" class="def">satisfiesConstraint</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Constraint.html#satisfiesConstraint" class="link">Source</a> <a href="#v:satisfiesConstraint" class="selflink">#</a></p><div class="doc"><p>Given an object <code>G</code> and a Constraint <code>c</code> (a Boolean formula over atomic constraints), check whether <code>G</code> satisfies <code>c</code></p></div></div><div class="top"><p class="src"><a id="v:satisfiesAllConstraints" class="def">satisfiesAllConstraints</a> :: <a href="Abstract-Morphism.html#t:FindMorphism">FindMorphism</a> m => <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [<a href="Abstract-Constraint.html#t:Constraint">Constraint</a> m] -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Constraint.html#satisfiesAllConstraints" class="link">Source</a> <a href="#v:satisfiesAllConstraints" class="selflink">#</a></p><div class="doc"><p>Given an object <code>G</code> and a list of Constraints (Boolean formulas over atomic constraints), check whether <code>G</code> satisfies the all them</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>