From 90136a2aa4e7d66180ca119f898b5d2912591b00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonah=20Br=C3=BCchert?= <jbb@kaidan.im>
Date: Mon, 12 Feb 2024 15:58:47 +0100
Subject: [PATCH] Add solutions

---
 15/induktion.txt        | 19 +++++++++++++++++++
 "15/l\303\266sungen.hs" | 10 ++++++++++
 2 files changed, 29 insertions(+)
 create mode 100644 15/induktion.txt
 create mode 100644 "15/l\303\266sungen.hs"

diff --git a/15/induktion.txt b/15/induktion.txt
new file mode 100644
index 0000000..da8c795
--- /dev/null
+++ b/15/induktion.txt
@@ -0,0 +1,19 @@
+IV
+
+(reverse . map f) xs = (map f . reverse) xs
+reverse (map f xs) = map f (reverse xs)
+
+
+IS
+
+xs = (x:xs)
+
+(reverse . map f) (x:xs)
+    = reverse (map f (x:xs))
+    = reverse (f x : (map f xs))
+    = reverse (map f xs) ++ [f x]
+    = map f (reverse xs) ++ [f x]
+    = map f (reverse xs) ++ map f [x]
+    = map f (reverse xs ++ [x])
+    = map f (reverse (x:xs))
+    = (map f . reverse) (x:xs)
diff --git "a/15/l\303\266sungen.hs" "b/15/l\303\266sungen.hs"
new file mode 100644
index 0000000..ca13c75
--- /dev/null
+++ "b/15/l\303\266sungen.hs"
@@ -0,0 +1,10 @@
+data Set = Union Set Set | Intersection Set Set | Complement Set | Set Char deriving Show
+
+
+deMorgan (Complement (Union a b))        = Intersection (Complement a) (Complement b)
+deMorgan (Complement (Intersection a b)) = Union (Complement a) (Complement b)
+
+deMorgan (Complement x) = Complement (deMorgan x)
+deMorgan (Intersection x y) = Intersection (deMorgan x) (deMorgan y)
+deMorgan (Union x y) = Union (deMorgan x) (deMorgan y)
+deMorgan x = x
-- 
GitLab