module Math.Functors.DataMigration.Example
(
main
)
where
import Math.FiniteCategory
import Math.FiniteCategories.SafeCompositionGraph
import Math.FiniteCategories
import Math.Functors.DataMigration
import Math.Categories.FinSet
import Math.IO.FiniteCategories.ExportGraphViz
import Data.WeakSet (Set)
import qualified Data.WeakSet as Set
import Data.WeakSet.Safe
import Data.WeakMap (Map)
import qualified Data.WeakMap as Map
import Data.WeakMap.Safe
main :: IO ()
main :: IO ()
main = do
String -> IO ()
putStrLn String
"Start of Math.Functors.DataMigration.Example"
let c :: Parallel
c = Parallel
Parallel
let d :: DiscreteCategory Char
d = Set Char -> DiscreteCategory Char
forall a. Set a -> DiscreteCategory a
discreteCategory (String -> Set Char
forall a. [a] -> Set a
set String
"A")
let f :: Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
f = Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
forall c1 m1 o1 c2 m2 o2.
(FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1,
Category c2 m2 o2, Morphism m2 o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> Diagram c1 m1 o1 c2 m2 o2
completeDiagram Diagram :: forall c1 m1 o1 c2 m2 o2.
c1 -> c2 -> Map o1 o2 -> Map m1 m2 -> Diagram c1 m1 o1 c2 m2 o2
Diagram{src :: DiscreteCategory Char
src=DiscreteCategory Char
d,tgt :: Parallel
tgt=Parallel
c,omap :: Map Char ParallelOb
omap=AssociationList Char ParallelOb -> Map Char ParallelOb
forall k v. AssociationList k v -> Map k v
weakMap [(Char
'A',ParallelOb
ParallelA)],mmap :: Map (StarIdentity Char) ParallelAr
mmap = Map (StarIdentity Char) ParallelAr
forall k a. Map k a
Map.empty}
Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
f String
"OutputGraphViz/Examples/Functors/DataMigration/functor"
let universe :: Ens Int
universe = Set (Set Int) -> Ens Int
forall a. Set (Set a) -> Ens a
ens (Set (Set Int) -> Ens Int) -> Set (Set Int) -> Ens Int
forall a b. (a -> b) -> a -> b
$ [Set Int] -> Set (Set Int)
forall a. [a] -> Set a
set [[Int] -> Set Int
forall a. [a] -> Set a
set[], [Int] -> Set Int
forall a. [a] -> Set a
set [Int
1 :: Int,Int
2], [Int] -> Set Int
forall a. [a] -> Set a
set [Int
1]]
let anInstance :: Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance = Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
forall c1 m1 o1 c2 m2 o2.
(FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1,
Category c2 m2 o2, Morphism m2 o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> Diagram c1 m1 o1 c2 m2 o2
completeDiagram Diagram :: forall c1 m1 o1 c2 m2 o2.
c1 -> c2 -> Map o1 o2 -> Map m1 m2 -> Diagram c1 m1 o1 c2 m2 o2
Diagram{src :: DiscreteCategory Char
src=DiscreteCategory Char
d,tgt :: Ens Int
tgt=Ens Int
universe,omap :: Map Char (Set Int)
omap=AssociationList Char (Set Int) -> Map Char (Set Int)
forall k v. AssociationList k v -> Map k v
weakMap [(Char
'A',[Int] -> Set Int
forall a. [a] -> Set a
set [Int
1])],mmap :: Map (StarIdentity Char) (Function Int)
mmap=Map (StarIdentity Char) (Function Int)
forall k a. Map k a
Map.empty}
Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance String
"OutputGraphViz/Examples/Functors/DataMigration/anInstance"
Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf2 Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance String
"OutputGraphViz/Examples/Functors/DataMigration/anInstance2"
let pii :: Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
pii = (Ens Int
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
-> Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
forall {c1} {m1} {o1} {c3} {m3} {o3} {c2} {m2} {o2}.
(FiniteCategory c1 m1 o1, FiniteCategory c3 m3 o3,
FiniteCategory c2 m2 o2, Morphism m1 o1, Morphism m3 o3,
Morphism m2 o2, Eq c1, Eq m1, Eq o1, Eq c3, Eq m3, Eq o3, Eq c2,
Eq m2, Eq o2) =>
c3
-> Diagram c1 m1 o1 c2 m2 o2
-> Diagram
(FunctorCategory c1 m1 o1 c3 m3 o3)
(NaturalTransformation c1 m1 o1 c3 m3 o3)
(Diagram c1 m1 o1 c3 m3 o3)
(FunctorCategory c2 m2 o2 c3 m3 o3)
(NaturalTransformation c2 m2 o2 c3 m3 o3)
(Diagram c2 m2 o2 c3 m3 o3)
piFunctor Ens Int
universe Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
f)
Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
pii Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance) String
"OutputGraphViz/Examples/Functors/DataMigration/pi_anInstance1"
Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf2 (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
pii Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance) String
"OutputGraphViz/Examples/Functors/DataMigration/pi_anInstance2"
String -> IO ()
putStrLn (String -> IO ()) -> String -> IO ()
forall a b. (a -> b) -> a -> b
$ Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String
forall a. Show a => a -> String
show (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
pii Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance)
let sigmaa :: Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
sigmaa = (Ens Int
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
-> Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
forall {c2} {m2} {o2} {c3} {m3} {o3} {c1} {m1} {o1}.
(FiniteCategory c2 m2 o2, FiniteCategory c3 m3 o3,
FiniteCategory c1 m1 o1, Morphism m2 o2, Morphism m3 o3,
Morphism m1 o1, Eq c2, Eq m2, Eq o2, Eq c3, Eq m3, Eq o3, Eq c1,
Eq m1, Eq o1) =>
c3
-> Diagram c1 m1 o1 c2 m2 o2
-> Diagram
(FunctorCategory c1 m1 o1 c3 m3 o3)
(NaturalTransformation c1 m1 o1 c3 m3 o3)
(Diagram c1 m1 o1 c3 m3 o3)
(FunctorCategory c2 m2 o2 c3 m3 o3)
(NaturalTransformation c2 m2 o2 c3 m3 o3)
(Diagram c2 m2 o2 c3 m3 o3)
sigmaFunctor Ens Int
universe Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
Parallel
ParallelAr
ParallelOb
f)
Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
sigmaa Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance) String
"OutputGraphViz/Examples/Functors/DataMigration/sigma_anInstance1"
Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String -> IO ()
forall m1 o1 c1 m2 o2 c2.
(Morphism m1 o1, FiniteCategory c1 m1 o1, Eq o1, Eq m1,
PrettyPrint m1, PrettyPrint o1, Morphism m2 o2,
FiniteCategory c2 m2 o2, Eq o2, Eq m2, PrettyPrint m2,
PrettyPrint o2) =>
Diagram c1 m1 o1 c2 m2 o2 -> String -> IO ()
diagToPdf2 (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
sigmaa Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance) String
"OutputGraphViz/Examples/Functors/DataMigration/sigma_anInstance2"
String -> IO ()
putStrLn (String -> IO ()) -> String -> IO ()
forall a b. (a -> b) -> a -> b
$ Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
-> String
forall a. Show a => a -> String
show (Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
sigmaa Diagram
(FunctorCategory
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(NaturalTransformation
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int))
(FunctorCategory
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(NaturalTransformation
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
(Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int))
-> Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
-> Diagram
Parallel ParallelAr ParallelOb (Ens Int) (Function Int) (Set Int)
forall o1 c1 m1 c2 m2 o2.
Eq o1 =>
Diagram c1 m1 o1 c2 m2 o2 -> o1 -> o2
->$ Diagram
(DiscreteCategory Char)
(StarIdentity Char)
Char
(Ens Int)
(Function Int)
(Set Int)
anInstance)
String -> IO ()
putStrLn String
"End of Math.Functors.DataMigration.Example"