From d839b8cf1986e726f788adf76f54212f4613a5e8 Mon Sep 17 00:00:00 2001
From: ComFreek <comfreek@outlook.com>
Date: Mon, 26 Oct 2020 17:36:06 +0100
Subject: [PATCH] docs

---
 .../FrameIT/frameworld/$Angle$Sum.omdoc.xz    | Bin 2228 -> 2248 bytes
 .../FrameIT/frameworld/$Opposite$Len.omdoc.xz | Bin 2288 -> 2304 bytes
 ...$Triangle$Scroll_$General$Problem.omdoc.xz | Bin 536 -> 596 bytes
 ...ngle$Scroll_$Right$Angled$Problem.omdoc.xz | Bin 940 -> 972 bytes
 .../mmt-omdoc/Scrolls/TriangleScrolls.mmt.err |   2 -
 source/Scrolls/README.md                      |  57 ++++++++++++++++++
 source/Scrolls/TriangleScrolls.mmt            |   8 +--
 7 files changed, 61 insertions(+), 6 deletions(-)
 create mode 100644 source/Scrolls/README.md

diff --git a/content/http..mathhub.info/FrameIT/frameworld/$Angle$Sum.omdoc.xz b/content/http..mathhub.info/FrameIT/frameworld/$Angle$Sum.omdoc.xz
index 8c0bb2a711a6a9f23e9f1848a24ec695edce7d65..9bf20e98a2684f3400455404a40bbf6394732cb6 100644
GIT binary patch
delta 2102
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

delta 2082
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
M`vL#}000D8T32=b2LJ#7

diff --git a/content/http..mathhub.info/FrameIT/frameworld/$Opposite$Len.omdoc.xz b/content/http..mathhub.info/FrameIT/frameworld/$Opposite$Len.omdoc.xz
index eac5cab4a80292619b1a927cede9fcd886f5259e..1689fbf227a6048e638804e232045169018ebaf9 100644
GIT binary patch
delta 2156
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

delta 2140
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
SZpfvv#Ao{g000001X)^hk0I{>

diff --git a/content/http..mathhub.info/FrameIT/frameworld/$Triangle$Scroll_$General$Problem.omdoc.xz b/content/http..mathhub.info/FrameIT/frameworld/$Triangle$Scroll_$General$Problem.omdoc.xz
index 5511dae393b2b5d1a5bf2f7b19a975942bb325a5..a37495953c1feaa9a6e6144f6678ca59acb49fb0 100644
GIT binary patch
delta 265
zcmV+k0rviw1k?nO83YYZ0u-?wKLLL=jIxlqmMoKq<c?cB5<-y!M(=WE&0A6VaQfZ+
zIiI@XzaK!<l0T{JK=VG+E`?9xiJ3tJsV`bPl~WH>j>1J=$D42%7&c*BA_(;aSq6f`
zggksl6;s>|24ftYMKN&}o7gie6Oy3)sdEq5zqb(?=?_DJuyx!dB>xDzivf9?5|@k~
zn6vL8-nS5s@m8jIqWyOIV2kKODP2FSMdw-Ao>}#9BvTjm2G>CeA5rV8%H7O9lKGlI
zk-4r5!_mdO^R&FR)b)1yaqCczXdqVYUGchF#R>ob4Lbj)ZFwqW00FQB&l&&#p1FV%
PvBYQl0ssI200dcD+*)|A

delta 205
zcmV;;05bp71egSn83YQ70oJh{KLLL_CXhDDGhv6;wd&pt!!yxHK|}a|V>P4M5vxin
z4JE)##=8il+9v?9HAniCquYH({RFkgyE|sv)H0UjX_gmsIZ+T{qjCzD<x1jS)V?&{
zwSk-ocKtTC!w#=dD^Lu?J8|2TN)slY<03E{zaGH{i}>;5<!K2Thh_v#4Us*8rgR$(
zh!Fs<<M{E8c|>9H(LCk-sy!^D00000czs#bHH}{700Hs?ixmI>zD64SvBYQl0ssI2
H00dcD1;bgT

diff --git a/content/http..mathhub.info/FrameIT/frameworld/$Triangle$Scroll_$Right$Angled$Problem.omdoc.xz b/content/http..mathhub.info/FrameIT/frameworld/$Triangle$Scroll_$Right$Angled$Problem.omdoc.xz
index 9cb883cfbebb09913ded77093cb43307a1c28401..e4f13b5c731a112c3f2db1d8247dc3c22eb8b4b2 100644
GIT binary patch
delta 703
zcmV;w0zmz&2h0bM83Z2o1B|g91p$App2JP}t9oY>@Z&KcB6JnNWZ2<O&^IEVl?o3U
z6!sk}iR0_*(#CemeC)fHH*a7lSy(BbL-W;D)9u?T$jA#8PJmK71dZ%f%`hd^Ee+fM
zTb5HUrwvaHU;5Kvv#e!@(6NwK;rebT@;PC2H0^bO%Dnv1-=_RbMV<}Fo5g=r%+k%%
z7*t7Uj7#jtt)7>C0m>rAI*ZtEhByq`Ux7}~RFpfsFI{<;J!>U6*2zUnEIn%jo2G8?
z!%7T`yN9AdIj9)-AnGX@eUnvdL-e@;E}uOCKy@aFUxQ~45vsz>&`XUEC9|~f5@lc%
zc{^nkv#=mWt>mBNvc804$h&{T4S^1&*U<%bXRy=tEn00X=fen#j7MN~D9dkHV)5jQ
zV$9&ujG6kXrRxU7zf2bbprsgblR)rD<tCFWnERF5fbf_ZDy;9->Sv4MC=r1601X;3
zPz7gb$&r?j1m$SX4NW~o2jlxMU6;}UgH3Jf>)rJT1oImhG&iiEn(%)aF-EL6YPe<Y
zx)yFz3GJKV_8PnIl1~A(MBs(rV8(O_mFl|c7=%ym0Dg30gW|d}QFShm1Mgy4mv&tg
z{+7>aduJJ?N-1C=20`^0zt}5((xytdC9!+zs7Rq1mzVsz#Yo^GDTd4=d~CO)c-)39
zZ&b!rhE<_S($Pz>nB9NCl%YL80KLI#nkWq0PX0!OzdhzXda0Pj>I<v=+jt6z39h4O
zO@Yzq(1P_%*bY0CEP9}_bfKY8>oppOH4D|EWDmtnMDAPB!^Cm<^RCl1Nu=x;>>k#2
z*j7r&Z$-}Qi>O9UAuUZcuV2Ul=az(~+lJURfEE))ayfD2S5hy>;Q-cPZQkA7);}FB
lg#a-EF9isIhavz0s0a5w005K2IJ2?DXZr#G00004Sz6|&RY?E<

delta 671
zcmV;Q0$}~j2doE>83Y|318cDz1p$Aono*POAxMtGCdY*Jy`EV6C-~UBQC2*LWN+sF
zO<1!Rd}^Vz%~>HWk7M=0YeEGmhuXOHKLpzB&lrJErQn+UexrO?WU9cJ7Xzoe-{eC%
zRei7Eon$!9+Vnil4}LAl$426Q5$ICM(-5(k3n*%5C3*Mbf$>;(tho_ESDb&groA6C
zi{dd$K`oR_YE^joj4P6vOMZbi+IV8KLJy7W4lokaE_&KsPN_chs-m+#U_p*kTCB$Q
zS~UU@)KAJYJX2bbmuRrJ|NkDrHq7OQ8?`j@myzuP70zc?I^nkLHA@n@uV8qYh|Y(n
z$ZdQ{3-ZcFQdd_1bqU76?puEogYKU!vu$uqETw%I#B<mP$qm>+5G2E8wmlGp5!-`N
z;=n%*hXQlV8Ca{=CyhA`sYqO0+x}D9V7jk`r!-{s+suNn*0e%GfAp&%YN)Z8M*hSa
zFS4SoYP%UYM<f|wzy*Tw_(v?-)&hGxiVU+R0yWD#6R&#$6p-iT)c}9+D^P%<v_`Q!
z+xO()R?#tI4<AE_6q-#64_l|atcUMQ<AbU8%RA*NB#<{t>R1DDvAlN2?K;kW^(8c1
zZHUA==D_p3WTAblTR=Weg(OL60QbOKrg_EJxjJrV5@S;572@eKJx{cciBRHSq7LK2
zN*g$41e0>Ucit!qb+doB@A^uWo0^ytkMe}fwIapMzhT^h+{2i&>?s;Gq#o4H+;nAy
zZ-ah8I5+M1t;E`p+?Z=Nc6W{cg6%iaJiokYA><xHUHK=KJ)y1POiM5{TXL_2>KZ{s
zQMsc>RN?YffC+8GIY~-&FCqW{01nr_yW3XGKL7!T2cJ3s02vRxAHK1~XZr#G00004
FSz4RuMAZNQ

diff --git a/errors/mmt-omdoc/Scrolls/TriangleScrolls.mmt.err b/errors/mmt-omdoc/Scrolls/TriangleScrolls.mmt.err
index a003a31..e69de29 100644
--- a/errors/mmt-omdoc/Scrolls/TriangleScrolls.mmt.err
+++ b/errors/mmt-omdoc/Scrolls/TriangleScrolls.mmt.err
@@ -1,2 +0,0 @@
-<errors>
-</errors>
diff --git a/source/Scrolls/README.md b/source/Scrolls/README.md
new file mode 100644
index 0000000..f0d55f5
--- /dev/null
+++ b/source/Scrolls/README.md
@@ -0,0 +1,57 @@
+# UFrameIT Scrolls
+
+## How to write one
+
+Let's walk through an example of writing a scroll. For simplicity, let us write a scroll "Midpoint" that requires two points `P` and `Q` as input, and that gives you upon application the midpoint between those points.
+
+```mmt
+theory Midpoint =
+    theory Problem =
+        // Declare all required fact inputs here.
+
+           For every fact, you may (but are not required to) give some meta information
+           like a label and description ❙
+
+        P
+            : point ❘
+            meta ?MetaAnnotations?label "P" ❘
+            meta ?MetaAnnotations?description "Some arbitrary input point"
+        ❙
+
+        Q
+            : point ❘
+            meta ?MetaAnnotations?label "Q" ❘
+            meta ?MetaAnnotations?description "Some other arbitrary input point"
+        ❙
+    ❚
+
+    theory Solution =
+        // note: include the problem theory before spelling out the meta annotations
+                 to have access to the facts formalized in the problem theory ❙
+        include ?Midpoint/Problem ❙
+
+        meta ?MetaAnnotations?label "MidPoint" ❙
+        meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙
+        meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙
+
+
+       // In the next meta datum string we prefix the double quotes by an "s"
+          to be able to make use of string interpolation. Concretely, this makes
+          the scroll dynamic: if the user fills the first P fact slot by a point
+          with label A, then the scroll description should also talk about A, not P.
+          
+          Hence, we use "${lverb P}", where by P we refer to the fact constant of P
+          as included by the problem theory. Read this as "label verbalization of P".
+          
+          And "${lverb P Q}" is syntactic sugar for "${lverb P}${lverb Q}", i.e., the mere
+          concatenation (without whitespace). ❙
+        meta ?MetaAnnotations?description s"Our MidPoint scroll that given two points ${lverb P} and ${lverb Q} computes the midpoint of the line ${lverb P Q}." ❙
+
+        midpoint
+            : point ❘
+            = ⟨0.5 ⋅ (P_x + Q_x), 0.5 ⋅ (P_x + Q_x), 0.5 ⋅ (P_x + Q_x)⟩ ❘
+            meta ?MetaAnnotations?label s"Mid[${lverb P Q}]" ❘
+            meta ?MetaAnnotations?description s"The midpoint between points ${lverb P} and ${lverb Q}."
+        ❙
+    ❚
+```
\ No newline at end of file
diff --git a/source/Scrolls/TriangleScrolls.mmt b/source/Scrolls/TriangleScrolls.mmt
index b45c20a..2ba6761 100644
--- a/source/Scrolls/TriangleScrolls.mmt
+++ b/source/Scrolls/TriangleScrolls.mmt
@@ -48,13 +48,13 @@ theory AngleSum =
     ❚
 
     theory Solution =
+        include ?AngleSum/Problem ❙
+
         meta ?MetaAnnotations?label "AngleSum" ❙
         meta ?MetaAnnotations?problemTheory ?AngleSum/Problem ❙
         meta ?MetaAnnotations?solutionTheory ?AngleSum/Solution ❙
         meta ?MetaAnnotations?description s"Given a triangle ${lverb A B C} and two known angles, we can deduce the missing angle by the sum of interior angles in triangles always being 180°" ❙
 
-       include ?AngleSum/Problem ❙
-
         angleBCA
             : Σ γ: ℝ. ⊦ ( ∠ B,C,A ) ≐ γ ❘
             = ⟨180.0 - (πl angleBAC) - (πl angleABC), sketch "By sum of interior angles = 180° in triangles"⟩ ❘
@@ -115,13 +115,13 @@ theory OppositeLen =
     ❚
     
     // theory Solution =
+        include ?Pythagoras/Problem ❙
+
         meta ?MetaAnnotations?label "Pythagoras" ❙
         meta ?MetaAnnotations?problemTheory ?Pythagoras/Problem ❙
         meta ?MetaAnnotations?solutionTheory ?Pythagoras/Solution ❙
         meta ?MetaAnnotations?description "Given a ABC right-angled at C and lengths of both legs, we can compute the length of the hypotenuse via Pythagora's theorem" ❙
 
-        include ?Pythagoras/Problem ❙
-
         deducedHypotenuse
             : Σ x:ℝ. ⊦ (d- A B) ≐ x ❘
             = ⟨√ ((πl distanceAC) ⋅ (πl distanceAC) + (πl distanceBC) ⋅ (πl distanceBC)),
-- 
GitLab