I should admit here and now that i haven't really taken a full course on logic, but this seems to fall under the same catagorizes as everything else does.
In the traditional logic they teach in undergraduate CS, member of sets are described using quantifiers(the universal and existential quantifier namely). The meaning of the expression changes based on what order the quantifers are put in. Existential quantifers "depend" on the universal quantifer they come after. This concept is a bit difficult for new students no thanks to the fact that human language is often very abigous about the meaning of sentences. Scope ambitguity is a big problem in language.
What always seemed weired to me was that it was never proven to me that all in my classes that all of the different possible relations between universal and existential quantifers could be expressed by lining them up in a row with different permutations. Turns out this was wrong like I thought. Some Swedish dude came up with "Independance Friendly Logic", which is a not too shabby notation for describing all the possible relations. You can use skolemization, but thats lame. I personally diagram the relations using circles and dots. Universal quantification are circles, existential quantification is dots. If a dot is in a circle then it depends on that universally quantified variable. In this system FOL is just all the diagrams which have concentric circles.
but ill nitpick on all this a little more later
Aug 14, 2008
Aug 13, 2008
More rants about marked roles
One of the interesting things about marked roles is how it really goes against the standard definition of a function. Functions are really a low level concepts. A function which receives marked inputs can be thought to act more intelligently than a function which takes a fixed number of arguments and handles them without having to think about what they are. Marked-input functions do not need to have a fixed number of arguments, nor do all roles have to be filled in before the function can be evaluated.
Lets take a function which computes the area of a rectangle called "AreaofRec". There are many different ways we could feed a function the information needed to compute the area. The prototypical being:
Lets take a function which computes the area of a rectangle called "AreaofRec". There are many different ways we could feed a function the information needed to compute the area. The prototypical being:
AreaofRec(length.5, width.4);
Or these other less common ways of input:
AreaofRec(length.5, diagonal.3);
AreaofRec(width.4, perimeter.20);
I guess its a good thing Im interested in ontologies.
AreaofRec(width.4, perimeter.20);
We can compute area of anyone of these rectangles from the information given. What we have effectively described is a function which evaluates in a certain way when it has received enough information.
Its an interesting idea, so why is it not done? Well its pretty clear that the terms we use to mark the roles of the input with will be difficult to work with. Take these for example:
We would have to some sort of agreement ontology and knowledge representation. These are still fields in their infancy, and therefore we shouldn't expect anything like this until we've come farther in knowledge representation. If we don't have any intuitive way of figuring out what we are supposed to call each of the roles, then memorized the role names becomes a task worse than memorizing the place each role is supposed to take.
Its an interesting idea, so why is it not done? Well its pretty clear that the terms we use to mark the roles of the input with will be difficult to work with. Take these for example:
Sort(sorted.[1,3,6,2,4] , method. <);
Sort(list.[1,3,6,2,4], orderingfunction.<);
Sort(list.[1,3,6,2,4], orderingfunction.<);
Theres nothing to tell us which to write unless we look at the documentation. Sure you have to look at the documentation to see wether the function or the list comes first but thats not nearly as irritating as not knowing what to call your arguments.
We would have to some sort of agreement ontology and knowledge representation. These are still fields in their infancy, and therefore we shouldn't expect anything like this until we've come farther in knowledge representation. If we don't have any intuitive way of figuring out what we are supposed to call each of the roles, then memorized the role names becomes a task worse than memorizing the place each role is supposed to take.
I guess its a good thing Im interested in ontologies.
Aug 12, 2008
久ぶり
Its been a long time since i last touched this probably because I had been writing elsewhere. That and stress. But the technical stuff I should really be writing in my notes a second draft, and i should probably write about less technical stuff and more intuitive things as well.
Anyway I should use this post to sum up some general feelings I have had from my general studies this summer that I haven't yet noted.
It has come to my attention that the single system of notation for logic and math may be damaging. Even from a psycholinguistic viewpoint, if one accepts the mild version of the whorf-sapir hypothesis then it is easy to conclude that multiple syntaxes for representing things would be important. One such example is the difference between explicit and ordered based role assignment. Current mathematical notation is based on the idea that arguments to functions are passed into it in a certain order and we determine the role of the arguments play in the function by matching them to variables which are also ordered. Example:
F(x,y) = x-y.
F(4,3)
We can reason here saying "4 is the first thing so I will replace it with the first variable in the definition (x). 3 is the second so I will replace it with second variable in the definition (y)."
Now this system is intutive and easy. It has served us well. But if we look at language as a structure we find a much different mechanism. Broadly speaking language marks the arguments role in the function/predicate. This doesn't seem to be recognized as much as it should by semanticisits using logic and is pretty rare. As far as I know the only instance of it i can find in math and compsci is in ocaml where labeled roles are allowed for functions. An example is below.
F(x,y) = x/y
F(y:3 , x:6)
We evaluate here by saying oh were supposed to replace y with 3 and x with 6 and we get 2. Here we have labeled 3 and 6 with their respective "roles" in the function.
Now both of these systems are equivalent right? Both are just as good.. but if you think about it more closely, having the roles marked allows us much more flexibility. Take partial applications in lambda calculus.
Let subtract = fun xy.x-y;
If we wish to write a function that tells you what you get when you stubtract three from something we only need to write
Let 3minus = subtract 3;
However if we want to see what happens when we take something and stubtract three from it, writing that function out becomes a bit more of a hassel
let subtractfrom3 = fun a. subtract a 3;
This is plan stupid. If we used marked roles the function becomes simpler to write.
let subtractfrom3 = subtract b:3 ;
let 3minus = subtract a:3;
(instead of using a and b we could simply mark it with 1,2,3..)
more fun uses of role-marking later
Anyway I should use this post to sum up some general feelings I have had from my general studies this summer that I haven't yet noted.
It has come to my attention that the single system of notation for logic and math may be damaging. Even from a psycholinguistic viewpoint, if one accepts the mild version of the whorf-sapir hypothesis then it is easy to conclude that multiple syntaxes for representing things would be important. One such example is the difference between explicit and ordered based role assignment. Current mathematical notation is based on the idea that arguments to functions are passed into it in a certain order and we determine the role of the arguments play in the function by matching them to variables which are also ordered. Example:
F(x,y) = x-y.
F(4,3)
We can reason here saying "4 is the first thing so I will replace it with the first variable in the definition (x). 3 is the second so I will replace it with second variable in the definition (y)."
Now this system is intutive and easy. It has served us well. But if we look at language as a structure we find a much different mechanism. Broadly speaking language marks the arguments role in the function/predicate. This doesn't seem to be recognized as much as it should by semanticisits using logic and is pretty rare. As far as I know the only instance of it i can find in math and compsci is in ocaml where labeled roles are allowed for functions. An example is below.
F(x,y) = x/y
F(y:3 , x:6)
We evaluate here by saying oh were supposed to replace y with 3 and x with 6 and we get 2. Here we have labeled 3 and 6 with their respective "roles" in the function.
Now both of these systems are equivalent right? Both are just as good.. but if you think about it more closely, having the roles marked allows us much more flexibility. Take partial applications in lambda calculus.
Let subtract = fun xy.x-y;
If we wish to write a function that tells you what you get when you stubtract three from something we only need to write
Let 3minus = subtract 3;
However if we want to see what happens when we take something and stubtract three from it, writing that function out becomes a bit more of a hassel
let subtractfrom3 = fun a. subtract a 3;
This is plan stupid. If we used marked roles the function becomes simpler to write.
let subtractfrom3 = subtract b:3 ;
let 3minus = subtract a:3;
(instead of using a and b we could simply mark it with 1,2,3..)
more fun uses of role-marking later
Jun 2, 2008
May 21, 2008
May 19, 2008
I went to the new champaign public library. It sure does alot to impress. The opening requires one to weave confusingly to enter in the main library. Inside one is greated with a corbusier scale interior that looked like it was refined by groupius. Unfortunately its evident that shelves were an after thought. Its a two story warehouse with no really effective system of partitioning space.
Thats not to say it doesn't look nice. It looks very classy. The rest of it is in good taste and theres several fun surprizes. But nothing makes up for bad room by room planning.
Interestingly enough the second floor is populated by wifi users on their laptops. Lots of them holding some sort of meeting at the table. The building is rather quiet even for a library, though i can't tell if its reverence or good acousitics. I see similar behaviour in cafe kopi downtown champaign everytime i visit. More and more people seem to be using public spaces as rented working areas. This as far as i can tell doesn't happen on campus where it only appears that people study and not actually work. I can only wonder how this relates to the new "culture of renting" that I keep on hearing about. Maybe coffe shops are good investments when the economy favors small scale organizations.
I keep on searching for outdoor spaces designed for study or work. There are few and in fact all of them have to be shaded to be laptop friendly. One such spot is a neglected garden area on the northwest side of the engineering hall. The seats are very comfortable. You have many more options if you just choose to read a book, but even then i find that hard to do laying down on grass or anything. Also, these days books are printed on paper that is almost shiny its so white. Older books used to age a bit but these don't turn yellow at all. I dont want to sound like some old japanese lament of the modern but really the aging of a book is a beautiful thing, and in bright sunlight these new books reflect so much light back from their disturbingly white covers that its unreadable.
Apr 9, 2008
did i rush this?
Oh god, what have i done. I was supposed to feel better, but now i don't know. I don't even really feel like me right now.
It's often been said that I should probably remove some of the less mature content on this blog like this. Although I am sure many would disagree, preserving to myself entries such as this one is crucial and I do so intentionally. The overall tone of this blog was never intended to be professional. The choice of orthography is enough to show that. How this kind of honesty is damaging is debatable.
This entry was made right after coming out to my friends for the first time and is the best reminder of that day in my life I have. That is why it is here.
It's often been said that I should probably remove some of the less mature content on this blog like this. Although I am sure many would disagree, preserving to myself entries such as this one is crucial and I do so intentionally. The overall tone of this blog was never intended to be professional. The choice of orthography is enough to show that. How this kind of honesty is damaging is debatable.
This entry was made right after coming out to my friends for the first time and is the best reminder of that day in my life I have. That is why it is here.
Subscribe to:
Posts (Atom)