{-| Module : FiniteCategories Description : An example of conversion from a `FinOrdSet` category to a `CompositionGraph`. Copyright : Guillaume Sabbagh 2021 License : GPL-3 Maintainer : guillaumesabbagh@protonmail.com Stability : experimental Portability : portable An example of conversion from a `FinOrdSet` category to a `CompositionGraph`. -} module ExampleCompositionGraph.ExampleFinSetToCompositionGraph ( main ) where import CompositionGraph.CompositionGraph import Set.FinOrdSet import Data.Set (fromList) import ExportGraphViz.ExportGraphViz import qualified FiniteCategory.FiniteCategory as FinCat (FiniteCategoryError(..)) import Data.Text (Text, pack) finSet = FinOrdSet [fromList [1,2], fromList [3]] :: FinOrdSet Int (cg, iso) = generatedFiniteCategoryToCompositionGraph finSet -- | Exports the composition graph as pdf file with GraphViz. main = do putStrLn "Start of ExampleFinSetToCompositionGraph" catToPdf finSet "OutputGraphViz/Examples/CompositionGraph/FinSetToCompositionGraph/finSet" catToPdf cg "OutputGraphViz/Examples/CompositionGraph/FinSetToCompositionGraph/compositionGraph" diagToPdf iso "OutputGraphViz/Examples/CompositionGraph/FinSetToCompositionGraph/funct" diagToPdf2 iso "OutputGraphViz/Examples/CompositionGraph/FinSetToCompositionGraph/diag" putStrLn "End of ExampleFinSetToCompositionGraph"