328 lines
24 KiB
HTML
328 lines
24 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<title> Reference</title>
|
||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||
<meta charset='utf-8'>
|
||
<script src="js/jquery.min.js" defer></script>
|
||
<script src="js/jazzy.js" defer></script>
|
||
|
||
<script src="js/lunr.min.js" defer></script>
|
||
<script src="js/typeahead.jquery.js" defer></script>
|
||
<script src="js/jazzy.search.js" defer></script>
|
||
</head>
|
||
<body>
|
||
<a title=" Reference"></a>
|
||
<header>
|
||
<div class="content-wrapper">
|
||
<p><a href="index.html"> Docs</a> (7% documented)</p>
|
||
<div class="header-right">
|
||
<form role="search" action="search.json">
|
||
<input type="text" placeholder="Search documentation" data-typeahead>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
</header>
|
||
<div class="content-wrapper">
|
||
<p id="breadcrumbs">
|
||
<a href="index.html"> Reference</a>
|
||
<img id="carat" src="img/carat.png" alt=""/>
|
||
Reference
|
||
</p>
|
||
</div>
|
||
<div class="content-wrapper">
|
||
<nav class="sidebar">
|
||
<ul class="nav-groups">
|
||
<li class="nav-group-name">
|
||
<a href="Classes.html">Classes</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Classes/FuzzyLogicController.html">FuzzyLogicController</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="nav-group-name">
|
||
<a href="Enums.html">Enumerations</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Enums/ComplementFunction.html">ComplementFunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/CompositionMethod.html">CompositionMethod</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/DifferenceFunction.html">DifferenceFunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/ImplicationMethod.html">ImplicationMethod</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/SNormFunction.html">SNormFunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/SymmetricDifferenceFunction.html">SymmetricDifferenceFunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Enums/TNormFunction.html">TNormFunction</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="nav-group-name">
|
||
<a href="Functions.html">Functions</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Functions.html#/s:10FuzzyLogic1nopyAA0A8NegationVy5InputQzGxAA0A11PropositionRzlF">!(_:)</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Functions.html#/s:10FuzzyLogic2aaoiyAA0A11ConjunctionVy5InputQz_AEQy_tGx_q_tAA0A11PropositionRzAaIR_r0_lF">&&(_:_:)</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Functions.html#/s:10FuzzyLogic3ssgoiyAA0A4RuleVy5InputQz_AEQy_tGx_q_tAA0A11PropositionRzAaIR_r0_lF">-->(_:_:)</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Functions.html#/s:10FuzzyLogic2xxoiyAA0A3XORVy5InputQz_AEQy_tGx_q_tAA0A11PropositionRzAaIR_r0_lF">^^(_:_:)</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Functions.html#/s:10FuzzyLogic2oooiyAA0A11DisjunctionVy5InputQz_AEQy_tGx_q_tAA0A11PropositionRzAaIR_r0_lF">||(_:_:)</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="nav-group-name">
|
||
<a href="Protocols.html">Protocols</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/AnyFuzzySetRepresentable.html">AnyFuzzySetRepresentable</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/FuzzyImplicationCapable.html">FuzzyImplicationCapable</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/FuzzyProposition.html">FuzzyProposition</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/FuzzySet.html">FuzzySet</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/FuzzySetOperations.html">FuzzySetOperations</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Protocols/LinguisticVariable.html">LinguisticVariable</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="nav-group-name">
|
||
<a href="Structs.html">Structures</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Structs/AnyFuzzySet.html">AnyFuzzySet</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/BinaryCartesianProduct.html">BinaryCartesianProduct</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/BinaryFuzzyRelation.html">BinaryFuzzyRelation</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/DiscreteMutableFuzzySet.html">DiscreteMutableFuzzySet</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/DynamicLinguisticVariable.html">DynamicLinguisticVariable</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyConjunction.html">FuzzyConjunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyDisjunction.html">FuzzyDisjunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyNegation.html">FuzzyNegation</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyRelationsComposition.html">FuzzyRelationsComposition</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyRule.html">FuzzyRule</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyRuleBase.html">FuzzyRuleBase</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyRuleBase/FuzzyRuleBaseBuilder.html">– FuzzyRuleBaseBuilder</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzySetComposition.html">FuzzySetComposition</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/FuzzyXOR.html">FuzzyXOR</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/HomogenousFuzzyRelation.html">HomogenousFuzzyRelation</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/IterableFuzzySet.html">IterableFuzzySet</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/IterableFuzzySet/Element.html">– Element</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/MembershipFunction.html">MembershipFunction</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/ModifiableLinguisticVariable.html">ModifiableLinguisticVariable</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/OperationSettings.html">OperationSettings</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/SimpleLinguisticVariable.html">SimpleLinguisticVariable</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/TernaryFuzzyRelation.html">TernaryFuzzyRelation</a>
|
||
</li>
|
||
<li class="nav-group-task">
|
||
<a href="Structs/TriangularFuzzyNumber.html">TriangularFuzzyNumber</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="nav-group-name">
|
||
<a href="Typealiases.html">Type Aliases</a>
|
||
<ul class="nav-group-tasks">
|
||
<li class="nav-group-task">
|
||
<a href="Typealiases.html#/s:9FuzzySets5Gradea">Grade</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
<article class="main-content">
|
||
<section>
|
||
<section class="section">
|
||
|
||
<p><img src="Resources/cover.png" alt="Cover photo"></p>
|
||
<h1 id='fuzzykit' class='heading'>FuzzyKit</h1>
|
||
|
||
<p>Fuzzy sets and fuzzy logic theory implementations.</p>
|
||
|
||
<p><img src="https://img.shields.io/badge/MADE%20FOR-SWIFT-orange?style=for-the-badge&logo=swift" alt="Made for Swift">
|
||
<img src="https://img.shields.io/badge/SWIFT%20PACKAGE%20MANAGER-SUPPORTED-green?style=for-the-badge&logo=SWIFT" alt="Swift Package Manager supported"></p>
|
||
|
||
<p><a href="https://github.com/allexks/FuzzyKit/actions/workflows/build-and-test.yml"><img src="https://github.com/allexks/FuzzyKit/actions/workflows/build-and-test.yml/badge.svg" alt="Build & Test"></a>
|
||
<img src="https://img.shields.io/github/license/allexks/FuzzyKit" alt="License"></p>
|
||
<h2 id='example-usage' class='heading'>Example Usage</h2>
|
||
<pre class="highlight swift"><code><span class="kd">import</span> <span class="kt">FuzzyKit</span>
|
||
|
||
<span class="kd">enum</span> <span class="kt">Funding</span> <span class="p">{</span> <span class="k">case</span> <span class="n">adequate</span><span class="p">,</span> <span class="n">marginal</span><span class="p">,</span> <span class="n">inadequate</span> <span class="p">}</span>
|
||
<span class="kd">enum</span> <span class="kt">Staffing</span> <span class="p">{</span> <span class="k">case</span> <span class="n">small</span><span class="p">,</span> <span class="n">large</span> <span class="p">}</span>
|
||
<span class="kd">enum</span> <span class="kt">Risk</span> <span class="p">{</span> <span class="k">case</span> <span class="n">low</span><span class="p">,</span> <span class="n">normal</span><span class="p">,</span> <span class="n">high</span> <span class="p">}</span>
|
||
|
||
<span class="k">let</span> <span class="nv">funding</span><span class="p">:</span> <span class="kt">SimpleLinguisticVariable</span><span class="o"><</span><span class="kt">Funding</span><span class="p">,</span> <span class="kt">AnyFuzzySet</span><span class="o">></span> <span class="o">=</span> <span class="p">[</span>
|
||
<span class="o">.</span><span class="nv">inadequate</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">leftOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">15</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">35</span><span class="p">)),</span>
|
||
<span class="o">.</span><span class="nv">marginal</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">triangular</span><span class="p">(</span><span class="nv">minimum</span><span class="p">:</span> <span class="mi">21</span><span class="p">,</span> <span class="nv">peak</span><span class="p">:</span> <span class="mi">41</span><span class="p">,</span> <span class="nv">maximum</span><span class="p">:</span> <span class="mi">61</span><span class="p">)),</span>
|
||
<span class="o">.</span><span class="nv">adequate</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">rightOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">55</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">75</span><span class="p">)),</span>
|
||
<span class="p">]</span>
|
||
|
||
<span class="k">let</span> <span class="nv">staffing</span><span class="p">:</span> <span class="kt">SimpleLinguisticVariable</span><span class="o"><</span><span class="kt">Staffing</span><span class="p">,</span> <span class="kt">AnyFuzzySet</span><span class="o">></span> <span class="o">=</span> <span class="p">[</span>
|
||
<span class="o">.</span><span class="nv">small</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">leftOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">29</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">69</span><span class="p">)),</span>
|
||
<span class="o">.</span><span class="nv">large</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">rightOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">37</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">77</span><span class="p">)),</span>
|
||
<span class="p">]</span>
|
||
|
||
<span class="k">let</span> <span class="nv">risk</span><span class="p">:</span> <span class="kt">SimpleLinguisticVariable</span><span class="o"><</span><span class="kt">Risk</span><span class="p">,</span> <span class="kt">AnyFuzzySet</span><span class="o">></span> <span class="o">=</span> <span class="p">[</span>
|
||
<span class="o">.</span><span class="nv">low</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">leftOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">20</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">40</span><span class="p">)),</span>
|
||
<span class="o">.</span><span class="nv">normal</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">triangular</span><span class="p">(</span><span class="nv">minimum</span><span class="p">:</span> <span class="mi">20</span><span class="p">,</span> <span class="nv">peak</span><span class="p">:</span> <span class="mi">50</span><span class="p">,</span> <span class="nv">maximum</span><span class="p">:</span> <span class="mi">80</span><span class="p">)),</span>
|
||
<span class="o">.</span><span class="nv">high</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">membershipFunction</span><span class="p">:</span> <span class="o">.</span><span class="nf">rightOpen</span><span class="p">(</span><span class="nv">slopeStart</span><span class="p">:</span> <span class="mi">60</span><span class="p">,</span> <span class="nv">slopeEnd</span><span class="p">:</span> <span class="mi">80</span><span class="p">)),</span>
|
||
<span class="p">]</span>
|
||
|
||
<span class="k">let</span> <span class="nv">Ø</span> <span class="o">=</span> <span class="kt">AnyFuzzySet</span><span class="o"><</span><span class="kt">Double</span><span class="o">>.</span><span class="n">empty</span>
|
||
|
||
<span class="k">let</span> <span class="nv">ruleBase</span> <span class="o">=</span> <span class="kt">FuzzyRuleBase</span> <span class="p">{</span>
|
||
<span class="n">funding</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">adequate</span><span class="p">)</span> <span class="o">||</span> <span class="n">staffing</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">small</span><span class="p">)</span> <span class="o">--></span> <span class="n">risk</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">low</span><span class="p">)</span>
|
||
<span class="n">funding</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">marginal</span><span class="p">)</span> <span class="o">&&</span> <span class="n">staffing</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">large</span><span class="p">)</span> <span class="o">--></span> <span class="n">risk</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">normal</span><span class="p">)</span>
|
||
<span class="n">funding</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">inadequate</span><span class="p">)</span> <span class="o">||</span> <span class="kt">Ø</span> <span class="o">--></span> <span class="n">risk</span><span class="o">.</span><span class="nf">is</span><span class="p">(</span><span class="o">.</span><span class="n">high</span><span class="p">)</span>
|
||
<span class="p">}</span>
|
||
|
||
<span class="k">let</span> <span class="nv">flc</span> <span class="o">=</span> <span class="kt">FuzzyLogicController</span><span class="p">(</span><span class="nv">rules</span><span class="p">:</span> <span class="n">ruleBase</span><span class="p">,</span> <span class="nv">settings</span><span class="p">:</span> <span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="nv">implication</span><span class="p">:</span> <span class="o">.</span><span class="n">mamdani</span><span class="p">))</span>
|
||
|
||
<span class="n">flc</span><span class="o">.</span><span class="nf">consequenceGrade</span><span class="p">(</span><span class="nv">for</span><span class="p">:</span> <span class="mi">50</span><span class="p">,</span> <span class="nv">usingSingletonFact</span><span class="p">:</span> <span class="p">(</span><span class="mf">8.8</span><span class="p">,</span> <span class="mi">42</span><span class="p">))</span> <span class="c1">// result is 0.675</span>
|
||
</code></pre>
|
||
<h2 id='modules' class='heading'>Modules</h2>
|
||
|
||
<p>Using the Swift Package Manager, don’t forget to add the package as a dependency to your <code>Package.swift</code> file:</p>
|
||
<pre class="highlight diff"><code>dependencies: [
|
||
<span class="gi">+ .package(url: "https://github.com/allexks/FuzzyKit", .upToNextMajor(from: "0.1.0")),
|
||
</span>],
|
||
</code></pre>
|
||
|
||
<p>To be able to use everything from this package, you can import everything at once using this helper module:</p>
|
||
<pre class="highlight diff"><code>.target(
|
||
name: "...",
|
||
dependencies: [
|
||
<span class="gi">+ .product(name: "FuzzyKit", package: "FuzzyKit"),
|
||
</span> ]
|
||
),
|
||
</code></pre>
|
||
<pre class="highlight swift"><code><span class="kd">import</span> <span class="kt">FuzzyKit</span>
|
||
</code></pre>
|
||
|
||
<p>Or alternatively, import only the specific modules needed:</p>
|
||
<pre class="highlight diff"><code>.target(
|
||
name: "...",
|
||
dependencies: [
|
||
<span class="gi">+ .product(name: "FuzzySets", package: "FuzzyKit"),
|
||
+ .product(name: "FuzzyNumbers", package: "FuzzyKit"),
|
||
+ .product(name: "FuzzyRelations", package: "FuzzyKit"),
|
||
+ .product(name: "FuzzyLogic", package: "FuzzyKit"),
|
||
</span> ]
|
||
),
|
||
</code></pre>
|
||
<pre class="highlight swift"><code><span class="kd">import</span> <span class="kt">FuzzySets</span>
|
||
<span class="kd">import</span> <span class="kt">FuzzyNumbers</span>
|
||
<span class="kd">import</span> <span class="kt">FuzzyRelations</span>
|
||
<span class="kd">import</span> <span class="kt">FuzzyLogic</span>
|
||
</code></pre>
|
||
<h2 id='api-reference' class='heading'>API Reference</h2>
|
||
|
||
<p>API Reference automatically collected with <code>jazzy</code> is published <a href="https://allexks.github.io/FuzzyKit">here</a> with each new release.</p>
|
||
<h2 id='code-fuzzysets-code-module' class='heading'><code>FuzzySets</code> Module</h2>
|
||
<h3 id='code-protocol-fuzzyset-code' class='heading'><code>protocol FuzzySet</code></h3>
|
||
|
||
<p>This abstraction requires a fuzzy set to provide a <code>grade(forElement:)</code> method which accepts a parameter of an <code>associatedtype Universe</code> and returns its membership <code><a href="Typealiases.html#/s:9FuzzySets5Gradea">Grade</a></code> in the set. There are 3 provided concrete implementations in this module:</p>
|
||
|
||
<ol>
|
||
<li><p><code>struct AnyFuzzySet</code> - allows type erasure. It only stores a <code><a href="Structs/MembershipFunction.html">MembershipFunction</a></code> and has non-mutable methods.</p></li>
|
||
<li><p><code>struct IterableFuzzySet</code> - stores a <code><a href="Structs/MembershipFunction.html">MembershipFunction</a></code> as well as a <code>Sequence</code> of elements of the associated type <code>Universe</code>. Implements <code>Sequence</code> so that it can easily be iterated over them. The elements of the iteration over an <code><a href="Structs/IterableFuzzySet.html">IterableFuzzySet</a></code> are <code>struct</code>s containing <code>grade</code> and <code>element</code> properties. It has non-mutable methods only. Includes <code>support</code>, <code>core</code> and <code>height</code> computed properties.</p></li>
|
||
<li><p><code>struct DiscreteMutableFuzzySet</code> - it is “discrete” because it doesn’t stores a <code><a href="Structs/MembershipFunction.html">MembershipFunction</a></code> but instead keeps its elements and their grade in a <code>Dictionary</code>, and it is “mutable” because it contains mutable equivalents of all other methods that operate over the set (including <code>subscript</code>). A default value of <code>0</code> is returned for the grade of an element that is not in the dictionary (a different default value can be provided as well). Includes <code>support</code>, <code>core</code> and <code>height</code> computed properties. A bonus feature is its debug print using Zadeh’s notation.</p></li>
|
||
</ol>
|
||
|
||
<p>Convertions between the 3 types are easy and possible using the <code>eraseToAnyFuzzySet</code>, <code>makeIterable</code> and <code>makeDiscreteMutable</code> methods defined on them.</p>
|
||
<h3 id='code-protocol-fuzzysetoperations-code' class='heading'><code>protocol FuzzySetOperations</code></h3>
|
||
|
||
<p>All 3 concrete types implement it. It requires the following methods that operate on fuzzy sets:</p>
|
||
|
||
<ul>
|
||
<li><p><code>alphaCut(_:alpha:)</code></p></li>
|
||
<li><p><code>complement(method:)</code></p></li>
|
||
<li><p><code>intersection(_:method:)</code></p></li>
|
||
<li><p><code>union(_:method:)</code></p></li>
|
||
<li><p><code>difference(_:method:)</code></p></li>
|
||
<li><p><code>symmetricDifference(_:method:)</code></p></li>
|
||
<li><p><code>power(_:n:)</code></p></li>
|
||
<li><p><code>appliedCustomFunction(_:function:)</code></p></li>
|
||
</ul>
|
||
<h2 id='license' class='heading'>License</h2>
|
||
|
||
<p><a href="LICENSE">MIT</a></p>
|
||
|
||
<p><a href="https://app.fossa.com/projects/git%2Bgithub.com%2Fallexks%2FFuzzyKit?ref=badge_large"><img src="https://app.fossa.com/api/projects/git%2Bgithub.com%2Fallexks%2FFuzzyKit.svg?type=large" alt="FOSSA Status"></a></p>
|
||
|
||
</section>
|
||
</section>
|
||
<section id="footer">
|
||
<p>© 2022 <a class="link" href="" target="_blank" rel="external noopener">Alexander Ignatov</a>. All rights reserved. (Last updated: 2022-02-08)</p>
|
||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.14.1</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
|
||
</section>
|
||
</article>
|
||
</div>
|
||
</body>
|
||
</html>
|