issues
search
kevinsullivan
/
cs6501s23
Formal Mathematics for Software Design
6
stars
6
forks
source link
issues
Newest
Newest
Most commented
Recently updated
Oldest
Least commented
Least recently updated
Fixed a few typos
#52
pitmonticone
opened
1 year ago
0
Ch 6 - Suggestions
#51
sm4sa
opened
1 year ago
0
Ch 5 - Suggestions
#50
sm4sa
opened
1 year ago
0
Ch 4 - Suggestions
#49
sm4sa
opened
1 year ago
0
6.4.1 Incomplete --> "The “architecture” of a structured collection of actions acting on a set of objects" --> sentence needs to be completed fully
#48
nehakrishnakumar
opened
1 year ago
0
5.3 I still don't exactly understand what typeclasses are and why they are needed. I know it involves the passing of an implicit value to foldr but I still don't really understand it.
#47
nehakrishnakumar
closed
1 year ago
0
Chapter 5 Notes
#46
RoboticMind
opened
1 year ago
0
Chapter 4 - Overall Notes
#45
RoboticMind
opened
1 year ago
0
Chapter 3 - Overall notes:
#44
RoboticMind
opened
1 year ago
0
3.4. Inference Rules - Typo
#43
sm4sa
opened
1 year ago
0
3.2.2. Logical Types - Suggestions
#42
sm4sa
opened
1 year ago
0
2.8.2. Proofs - Typo
#41
sm4sa
opened
1 year ago
0
2.7 Suggestions
#40
sm4sa
opened
1 year ago
0
2.8. Inference Rules Validation - Typo
#39
sm4sa
opened
1 year ago
0
2.6.2. Commutativity - Typo
#38
sm4sa
opened
1 year ago
1
Section 2.6 Suggestions
#37
RoboticMind
opened
1 year ago
0
2.5 - Typo And Suggestions
#36
RoboticMind
opened
1 year ago
0
4.2.2: "def plus : nat → nat → nat | nat.zero m := m | (nat.succ n') m := nat.succ (plus n' m) " --> Where do the n and m come from? I'm assuming that m is the second argument and n is the first argument, because that makes the most sense with the problem. The comment given is good but there's no specific pseudocode to illustrate what exactly is happening.
#35
nehakrishnakumar
closed
1 year ago
1
Section 2.4.3 - Suggestions
#34
RoboticMind
opened
1 year ago
0
4.2.2 "That means considering two cases separately: the incoming value is either zero or non-zero: that is, either nat.zero, or nat.succ n’ for some “one-smaller” value, n’." Does this mean that it will be defined inductively or am I just being a silly goose?
#33
nehakrishnakumar
opened
1 year ago
0
Chapter 2.2 - Adding and Updating Comments Here
#32
RoboticMind
opened
1 year ago
0
Chapter 2.1.5 - Clarifying Writing
#31
RoboticMind
opened
1 year ago
0
3.4 "Propositions are types, so true is a type, but one that inhabits Prop; and it has one constant constructor and that’s the one and only proof, intro.That’s it!" --> Are you saying that the proposition can be assigned to its one and only proof? But aren't they technically different types? Or are both Props (or maybe both are in the overarching class of Type?) But both being in the same class would not make sense as it's a hierarchy of universes with different types as I understand it!
#30
nehakrishnakumar
opened
1 year ago
1
Chapter 2.1.3 - Suggestions
#29
RoboticMind
opened
1 year ago
0
Chapter 3: Propositions contain proofs, but why is that the case? I think that needs to be further explained because we just assume that propositions contain proofs.
#28
nehakrishnakumar
opened
1 year ago
0
3.1 "Generalizing (∀) over types gives us parametric polymorphism" --> I don't think parametric polymorphism was defined here. I checked the Ch 3 doc and it wasn't defined anywhere. Perhaps I missed it but I think it should be defined here.
#27
nehakrishnakumar
opened
1 year ago
0
"This is usually shortened to X, Y ⊢ X ∧ Y based on the assumption that everything to the left of the turnstile is assumed to have already been judged to be true. Such a rule can be pronounced as follows: in a context in which you have already judged X and Y to be true you can always conclude that X ∧ Y is true." --> Does this mean that just stating X or just stating Y means that those are true, or does it mean that X is just equal to X? Is it circular, and will the meaning always be this way for inference rules?
#26
nehakrishnakumar
opened
1 year ago
1
2.2.2. Semantics - Typo
#25
sm4sa
opened
1 year ago
2
2.2.1. Syntax - Wording
#24
sm4sa
opened
1 year ago
0
2.2. Simplified Propositional Logic - Wording/Typo
#23
sm4sa
opened
1 year ago
0
2.5.2 How would you test the fixing of the bug? I'm guessing you would use the reduce command, I don't think it was delineated in the actual class notes though.
#22
nehakrishnakumar
opened
1 year ago
0
2.5.2 "(pBinOp op e1 e2) i := (bin_op_sem op) (pEval e1 i) (pEval e2 i) -- BUG FIXED :-)! " What do the several parentheses mean? I'm trying to follow along in Haskell for the syntax but I'm not sure what multiple parentheses mean. Is this the composition of functions? Perhaps making this clearer will be better.
#21
nehakrishnakumar
opened
1 year ago
0
2.1. Balanced Parentheses - Suggestion
#20
sm4sa
opened
1 year ago
0
2.1.4. Inductive Datatype Definitions - Typo
#19
sm4sa
opened
1 year ago
0
2.1.3. Formal Syntax - Typo
#18
sm4sa
opened
1 year ago
0
2.1.3. Formal Syntax - Clarity
#17
sm4sa
opened
1 year ago
0
2.1.2. Paper & Pencil Syntax - Typo
#16
sm4sa
opened
1 year ago
0
2.1. Balanced Parentheses - Typo
#15
sm4sa
opened
1 year ago
0
How do constructors work in Lean? I feel that there could be a better explanation of this before the exercises are done. I am stuck on exercise 2.4.3 because I don't fully understand the syntax of the constructors in Lean even though I feel like it could be more easily understood.
#14
nehakrishnakumar
opened
1 year ago
0
1.2.4. This class - Typo
#13
sm4sa
opened
1 year ago
1
1.2.3. What is the point? - Typo
#12
sm4sa
opened
1 year ago
0
1.2.3. What is the point? - Typo
#11
sm4sa
opened
1 year ago
0
1.1.1. Abstract Mathematics
#10
sm4sa
closed
1 year ago
0
1.1.3. A Path Forward - Clarity
#9
sm4sa
opened
1 year ago
0
1.1.1. Abstract Mathematics/ 1.1.2. Costs of Concreteness - Clarity
#8
sm4sa
opened
1 year ago
0
1.1.2. Costs of Concreteness - Typo
#7
sm4sa
opened
1 year ago
0
2.2.1 Syntax: "a language of propositional expressions (propositions) * constant expressions, true and false * variable expressions, such as X, Y, Z, TheSkyIsBlue, each such expression having an associated variable * operator expressions, such as ¬X, X ∧ Y, and X ∨ Y" --> I think the bullet points should actually be separated out because this was confusing when I first read it.
#6
nehakrishnakumar
opened
1 year ago
0
2.1 Balanced Parentheses "We will do that by defining a small set of basic rules for building strings of this kind (we’ll call them constructors), sufficient for constructing all and only the strings in the language." It might be helpful to articulate whether the constructors are the actual strings themselves, or the rules. From my understanding it is the rules, but I feel like it would be best to clarify.
#5
nehakrishnakumar
opened
1 year ago
0
2.1.1: Formal Languages "The formal language of basic algebra, for example, includes strings such as x, y, and x + y, but not x y. Propositional logic includes X, Y, and X ∧ Y but not X Y." Is this supposed to be spaces or is this a typo? Because I know that xy is possible with algebra, but not x y.
#4
nehakrishnakumar
opened
1 year ago
0
"First, as mentioned, it substitues concrete representations for abstract, adding inessesntial complexity to models and computations." --> I believe it is substitute abstract for concrete, because abstract models as mentioned before in the section reduce complexity, unless I am understanding this incorrectly.
#3
nehakrishnakumar
opened
1 year ago
0
Next