943,694 Members | Top Members by Rank

Ad:
Sep 16th, 2008
0

Mathematical tools in computer science

Expand Post »
Hello everyone.

I am a student working on network protocols. Now I have a rough idea
to use mathematical tools, e.g. formal methods, to examine or even
build the model of protocols.

As I have no in-depth concept of these tools, I would like now ask
some naive questions:

1. What is the relationship between formal methods and type theory, as
some papers mentioned that they are inter-related.

2. What is lamda calculus and its relationship with formal methods.

Any help will be appreciated. Thanks very much!

Ed
Similar Threads
Reputation Points: 10
Solved Threads: 0
Newbie Poster
pduregi is offline Offline
2 posts
since Sep 2008
Sep 20th, 2008
0

Re: Mathematical tools in computer science

And here are some naive answers.

1. Type checking proves properties about the code. The compiler proves your assertion that your function returns an int, or that it returns something whose type depends on the types of the arguments in some way. They can also prove other claims you make about your functions, like whether they throw any exceptions (which Java supports) or what side effects the functions may have (which Haskell supports, albeit without any granularity). Regarding network I/O, searching for things like "monad", "linear types", "uniqueness types", and maybe "session types" might reveal some more information.

2. You can read about lambda calculus on Wikipedia, and I don't know its relationship to formal methods.
Last edited by sarehu; Sep 20th, 2008 at 8:03 pm.
Reputation Points: 98
Solved Threads: 22
Posting Whiz in Training
sarehu is offline Offline
269 posts
since Oct 2007
Sep 20th, 2008
-1

Re: Mathematical tools in computer science

Try this link
Maybe some freeware from there site can be helpfull for you.

Nice
Reputation Points: 10
Solved Threads: 1
Junior Poster in Training
cakka is offline Offline
65 posts
since Mar 2007
Sep 21st, 2008
0

Re: Mathematical tools in computer science

That's very nice of you two. Thank you very much!
Reputation Points: 10
Solved Threads: 0
Newbie Poster
pduregi is offline Offline
2 posts
since Sep 2008
Oct 25th, 2008
-1

Re: Mathematical tools in computer science

As far as Lambda Calclus is concerned it is a mathematical way
to write computer programs and that too recursive programms.

To give u a taste ::

let y = lambda

y:f(x)->x+1

this is a lambda statement that says f is a function that takes an argument and add 1 to it

Lambda calclus can be seen in pure Type strong languages like Gofer.

Formal mathods is used for programme specification..
When u are building a software It needs

1: Specification
2: Design
3: code
4:test
5:maintain

In specifications we specify the problems in terms of functional parameters....

Tell me If that hepls.
Reputation Points: 4
Solved Threads: 1
Newbie Poster
aashish.raina is offline Offline
8 posts
since Oct 2008
Oct 26th, 2008
0

Re: Mathematical tools in computer science

y:f(x)->x+1 is, um "nonstandard" notation. (Meaning: Where the heck did you come up with that?)

The lambda calculus notation for a function such as that would be
\x.x+1
where \ is meant to be the lambda character (but I don't have a unicode keyboard handy).
Reputation Points: 29
Solved Threads: 4
Light Poster
shrughes is offline Offline
44 posts
since Oct 2008

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Computer Science Forum Timeline: Combine a half adder with a full adder to a 2 bit adder
Next Thread in Computer Science Forum Timeline: Graph Theory Complexity





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC