{-| Module  : FiniteCategories
Description : An example of 'FullSubcategory' of __'FinCat'__ exported with GraphViz.
Copyright   : Guillaume Sabbagh 2022
License     : GPL-3
Maintainer  : guillaumesabbagh@protonmail.com
Stability   : experimental
Portability : portable

An example of 'FullSubcategory' of __'FinCat'__ exported with GraphViz.

Export the category in the directory "OutputGraphViz\/Examples\/FiniteCategories\/FinCat".
-}
module Math.FiniteCategories.FinCat.Example
(
    main
)
where
    import Data.WeakSet.Safe
    
    import Math.Categories
    import Math.FiniteCategories
    import Math.IO.FiniteCategories.ExportGraphViz
    
    import Numeric.Natural
    
    -- | An example of 'FullSubcategory' of __'FinCat'__ exported with GraphViz.

    main :: IO ()
    main :: IO ()
main = do
        String -> IO ()
putStrLn String
"Start of Math.FiniteCategories.FinCat.Example"
        FullSubcategory
  (FinCat
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
     (IsSmallerThan Natural)
     Natural)
  (Diagram
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
     (IsSmallerThan Natural)
     Natural
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
     (IsSmallerThan Natural)
     Natural)
  (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
-> String -> IO ()
forall o m c.
(Eq o, PrettyPrint o, PrettyPrint m, Morphism m o,
 FiniteCategory c m o) =>
c -> String -> IO ()
catToPdf (FinCat
  (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
  (IsSmallerThan Natural)
  Natural
-> Set
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
-> FullSubcategory
     (FinCat
        (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
        (IsSmallerThan Natural)
        Natural)
     (Diagram
        (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
        (IsSmallerThan Natural)
        Natural
        (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
        (IsSmallerThan Natural)
        Natural)
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
forall c m o. c -> Set o -> FullSubcategory c m o
FullSubcategory FinCat
  (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
  (IsSmallerThan Natural)
  Natural
forall c m o. FinCat c m o
FinCat (Natural
-> InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural
numberCategory (Natural
 -> InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
-> Set Natural
-> Set
     (InheritedFullSubcategory Omega (IsSmallerThan Natural) Natural)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ([Natural] -> Set Natural
forall a. [a] -> Set a
set [Natural
0..Natural
2])) :: FullSubcategory (FinCat NumberCategory NumberCategoryMorphism Natural) (FinFunctor NumberCategory NumberCategoryMorphism Natural) NumberCategory) String
"OutputGraphViz/Examples/FiniteCategories/FinCat/FinCat"
        String -> IO ()
putStrLn String
"End of Math.FiniteCategories.FinCat.Example"