Wednesday, October 11, 2006

Definition of an Entity

Quite often I run into a situation where I ask myself:
- Why I need to define a particular object?
- What I neet to add to the object to make it complete?
- What will make it complete?
- What is mandatory for an object to have?
- What can be treated as optional?
- How do I classify what is mandatory and what is optional for the object?

My approach towards solving these question is what is the bare minimum requirement for the entity to exist. Like for a person to exist in this world we need First Name and Last Name. Rest other details attached to the person is based on where we need them. But name is something which is unique to the person in the system.

But then again it is also driven by where the entity is used. A person's date of birth and Joining Date is mandatory if the person is part of an organization. But they are optional if the person is being treated as Supplier or Customer.

I am still exploring on this topic and hoping to find an answer soon.

Until Next Time :)

Monday, October 09, 2006

Application of Mathematical Logic

In my last post I left with two topics one of them is Application of Mathematical Logic. As I understand it leaves many people wonder what is the Mathematical Logic and how is it related to Computers and for that matter Semantics?

Application of Mathematical Logic = Applying Mathematical Logic or Usage of Mathematical Logic. In order to understand what it means it is better to understand the Mathematical Logic First.

Mathematical Logic is a specialized sub-field of mathematics where we deal with Formal Systems in relation to the mathematical concepts like Sets, Numbers and computations etc. It has an important role to play in the Study of Foundation of Mathematics. It is not much of of the Logic of Mathematics rather instead it is Mathematics of Logic. It deals with those parts of the logic which can be modeled and studied mathematically and also includes area of pure mathematics like Model Theory and Recursion Theory.

It was a while ago when I was discussing the same topic with Nathan and there we were trying to find one common language which is being understood by both human and the machines. While Humans can understand different languages the computers can understand Machine language well. Things we humans find cumbersome to do like Calculating large numbers, analyzing large volume of data etc are cakewalk for computers but things what we find easy like Face recognition, Voice Recognition are pretty difficult and at times nearly impossible for computers to perform.

So where does it leaves us. If we go back and have a look at the Applied Science everything revolves around mathematics. All the complex calculations have their mathematical into it. A while ago I was watching Matrix and the idea of representing human structure as Matrix really hit me hard. I started to think is it really possible to represent a complex structure like human in terms of Matrix? Well nothing seems to be impossible and if that is the case then Mathematics is the language which can bridge the gap between Humans and computers.

Going back to what Semantics "is the formal science of the conditions of the truth of representations" Which also can be related to mathematical equations. I have a strong feeling that mathematics is one of the ideal mechanism to represent the truth. Which will also mean that It can be used to bridge the gap between human and computer's interpretation of the Logic.

I am still in the process of exploring how the mathematics can be used for writting applications which makes human language understandable to computers.

Until Next Time... :)