Sunday, November 15, 2009

Future of GUI

http://www.istartedsomething.com/20091106/microsoft-college-tour-09/

Saturday, November 14, 2009

Not my work... got from net.

How great minds work (:o)

Atlast I decide to put away my procrastination and start preparing something for my placements. So I took up this book on C and like all books on C it started with the history of C. I was awestruck when I read about how Brian Kernighan and Dennis Ritchie created C...
They were playing a game called 'Asteroids' in a mainframe (a computer used by many people simultaneously), and because of the congestion, the game was slow and they couldn't control their spaceship and got hit by asteroids too frequently. Their friends started making fun of them and though it was not their mistake they took it personally and decided to show them their real talent in the game.
For this they needed a better computer, and since they were working at AT & T labs they had plenty of them to choose from (I am talking about an incident taking place around 1970 here... this is before the time of the PC). They got hold of an unused one but unfortunately that computer did not have an OS! So our frieds Brian and Dennis decided to write an OS for it (man... what sort of gaming freaks!!! writing an OS to play a game).
So they sat and wrote an Os in assembly language on some other computer (lets call it the 'testing' computer to prevent confusions later on) to test it and got it ready. But now to install the OS in there gaming computer they need to translate the program to its assembly language. So they decided that instead of unnecessarily reinventing the wheel, if they use a high level language to write their OS, all they would have to do is install the compiler of the language in the computers that they wish to install the OS. So they sat about designing a new language, and for it a new compiler. Then they installed the compiler in the gaming machine as well as the testing machine, tested their new OS in the testing machine and installed it in the gaming machine, played 'asteroids' and lived happily ever after.
Their language was called C which is now used to write the code for games because of the high processing speed (This leads to a rather perplexing question... what came first? computer games or C... thats an example of an obscure joke :)... read through the post 'what orkut meant' for more details).

Almost all the inventions in history took place as a result of a chain of necessities starting from a very simple need or as a search for a very trivial problems in life. We all are waiting for a big opportunity to do something great, but are ignorant of the small ones that that cross our path everyday

My all time fav piece ....

Let me tell you something you already know.
The world ain't all sunshine and rainbows.
It is a very mean and nasty place and it will beat you to your knees and keep you there permanently if you let it.
You, me, or nobody is gonna hit as hard as life.
But it ain't how hard you hit; it's about how hard you can get hit, and keep moving forward.
How much you can take, and keep moving forward.
That's how winning is done.
Now, if you know what you're worth, then go out and get what you're worth.
But you gotta be willing to take the hit, and not pointing fingers saying you ain't where you are because of him, or her, or anybody.
Cowards do that and that ain't you.
You're better than that!

Sunday, June 28, 2009

Historical Origins

In 1991, created a research project that was code named Green. The project's purpose was to create a language that could run intelligent consumer electronic devices (set top boxes). The project resulted in an object-oriented (C- and C++ based) language that it's creator, James Gosling, called Oak. He called it Oak after an oak tree outside his office window. It turned out that there was already another computer language named Oak. As a result, the new name of arose when a group of Sun employees went to a local coffee shop.

The marketplace for intelligent consumer devices was not going well at the time, and the Green project was almost cancelled. Fortunately, the world wide web exploded in popularity in 1993, and the advantages of using Java as a web programming language became apparent.

The first public release of Java was Java 1.0 in 1995. Java 2.0 was released in 1998, and there were different editions for different platforms. JSEE was the enterprise edition, JSSE was the standard edition, and JSME was for mobile applications.

In May 2007, Sun made all of Java's core code free/open source, except for a small portion, which they did not rights to.

Key Features

  1. Java was designed to use small amounts of memory
  2. Java has an automatic "garbage collection" process that releases memory when it is no longer needed.
  3. Java is an object-oriented language
  4. Java uses an intermediate language called bytecode to make it platform independent
  5. A Java Virtual Machine () has been designed for most operating systems. The Java Virtual Machine translates the intermediate bytecode to the native machine language for that operating system.
  6. There are various methods of executing Java
  7. The same Java code can run on a stand-alone computer, a browser client, or a web server. Java code is called an "application" when it runs on a stand alone computer. It is called an "applet" when it runs in a client's browser, and it is called a "servlet" when it runs on the server. Java Server Pages (JSP) are like Active Server Pages. They carry out commands to process data and build web pages on the fly.
  8. Java is different from JavaScript. JavaScript is a just scripting language - it is not a full-blown language like Java. Java is compiled into bytecode, but JavaScript is not. JavaScript is embedded into static HTML pages to make them appear more dynamic. For example, JavaScript might be used to create a pull-down menu or a pop-up screen.

Although Java applications and applets have experienced some success, Java's real strength lies on the server side. Java is the most popular language for communicating across the network, and Sun's J2EE enterprise model has become the application server standard.

Saturday, June 27, 2009

Monday, June 15, 2009

Making good software

10 commandments for creating good code

with 29 comments

1.- DRY: Don’t repeat yourself.

DRY is usually the easiest principle to understand, but it is quite harder to apply. It means that when finding similar code in two or more places, we should abstract them into a new method and change the previous code fragments so they will now call the new method with the appropriate parameters.

DRY is maybe the most universal coding principle, I have never found a developer who would argue that repeating code is good, but, I have found developers that forget about this principle when coding unit tests, as an example: imagine that you have changed the interface of a class which had lots of unit tests, if you haven’t used DRY, you will have to manually change the call to this class interface to match the new signatures to each test case.

2.- Write short methods.

There are three very good reasons for writing short methods.

  1. Your code will be easier to read.
  2. Your code will be easier to reuse (short methods are likely to produce loose coupling).
  3. Your code will be easier to test.

3.- Use good names for your classes, methods and variables.

There is nothing nicer than using some other developer code and not having to read its documentation because the names of the classes and the methods are telling us everything, so, make everyone’s life easier and take this approach, expend always a few seconds before naming any element in your code.

4.- Assign the right responsibility to each class.

One class, one responsibility, that will sound familiar to those who know about the SOLID principles, but not any responsibility, the right responsibility, so if we have the class Customer, we won’t assign to it the responsibility to create a new sales action, we will just assign it the responsibility to handle all the data related with a customer.

5.- Keep your code organized.

This organization is at two levels.

  • Physical organization: Whatever the structure you are using, packages, namespaces, folders… Organize your classes in such a way that is easy and intuitive to find where the code is stored.
  • Logical organization: Whatever belongs logically together should have access to each other members, but what belongs to a different logic structure has to access them by an interface. These logic groups are commonly implemented as layers, services…

6.- Create lots of unit tests.

The most tests you have, the better, they are our safety net for all the changes we will have to perform in the code in the future.

7.- Refactor often and sooner.

Software development is a continuous discovery process, in order to keep up to date with good code that matches the new/changing requirements is essential to refactor the code as we go. As this is a risky task there are 2 main preconditions to avoid entering new bugs into the system.

  1. Have lots of unit tests.
  2. Do small refactor steps at a time. In software development there are very few things more annoying than start refactoring 2000 lines of code to after 3 hours of work realize that is necessary to roll back to the original version because now nothing works and the track of which change is causing the problem is lost.

8.- Comments are evil.

This particular one is a bit controversial, most of us were taught that comments are good, and actually it’s better to have a comment in an obscure piece of code than just having the code by itself, what this point means is that: even better than having a comment for an obscure piece of code is to not to have that code at all, just refactor it until is a nice and readable piece of code. [EDIT] Please read this other post for a better explanation of what “comments are evil” means.

9.- Code to an interface, not to an implementation.

This is a classic one, coding to an interface will free us from the implementation details, we just define a contract and rely on calling the defined operations on the contract, expecting that the actual implementation will be passed to our code or decided at runtime.

10.- Have code reviews.

We all make mistakes, and there’s nothing better than asking some other person to have a quick and informal review in our code to find them, in order to make the reviews,  it’s better not to wait until the code is completed, it’s better to ask for reviews whenever some important part of the code has been completed or when a few days have passed from the previous review.

Written by Alberto G

June 4th, 2009 at 11:29 pm

Sunday, June 7, 2009

Shrink That Link: Boosting Brevity With URL Shorteners

On the short-messaging service Twitter, space is at a premium: You've got 140 characters to make your point, and you probably don't want to waste half of it on a super-sized link to your latest YouTube obsession. There's an increasingly popular quick fix: a free URL shortener. On one of these Web sites, you can plug in a long Internet address, known as a "URL," and it will assign you a much shorter one.

Posted using ShareThis

Friday, June 5, 2009

Link of the Week - Data transfer at a snail's pace. Literally.


The snail-based system in feed-forward action. Image courtesy Herbert Bishko. Photo on front page courtesy Lysanne Ooteman, stock.exchng

If you think you have problems with the sometimes slow pace at which information travels from one computer to another, then consider the solution offered by this scientific paper: “Snail-based Data Transfer Protocol.”

It describes an experiment in data transfer using real, genuine, live snails, along with a “lettuce-based guidance system.”

No lie.

There’s even a picture (see right).

The papers’ authors, Shimon Schocken, dean of Efi Arazi School of Computer Science Herzliya, and Revital Ben-David-Zaslow of the Department of Zoology at Tel Aviv University, Israel, reported that their experiment delivered a 37 million bits-per-second data transfer rate — faster than ADSL.

Their paper earned the distinction of being named a “Classic” by the Annals of Improbable Research, the same organization that awards the yearly Ig Nobel Prizes for research that “makes people laugh and then think.” (Or, as some wags put it, for “research which can not — and should not — be reproduced.”)

The paper does admit to a drawback: “In some regions, most notably France, culinary habits may pose a denial-of-service (DOS) problem.”

PS: We found escargot to be rather nice — especially after drinking plenty of wine first!

Thursday, June 4, 2009


How to Save Your Newspaper??

How to Save Your Newspaper??

clip_image002

Time magazine's cover story by Walter Isaacson --with its proposal for saving newspapers from a crisis of "meltdown proportions"--has bloggers buzzing. No more free content, the writer suggests (and, uh, you can view a version of the article for free at Time's own website and even more ironically, reposted for free under Isaacson's pictureatHuffington Post.) Isaacson, a veteran print editor and now CEO of the Aspen Institute, says forsaking newsstand sales and subscriptions for an all-ad-supported model online was a terrible play for papers, admitting even he doesn't pay to read the New York Times anymore. "I still buy the paper. Thanks, Walter, for making me feel like a chump!" says Scott Rosenberg's WordYard. Isaacson proposes protecting content and charging online readers small fees. He has some useful ideas, but let the mocking begin! "Laughable," saysTechdirt. "If most newspapers switch to micropayments,someone ...will create a new news site that doesn't charge."

clip_image004Many have considered micropayments a dead issue since Clay Shirky's seminal trashing of the concept. If newspapers all simultaneously institute fees, it might belegally prohibited as a form of price fixing, suggestsScreenwerkNerd Acumen doesn't even think the idea is possible: "While I don't condone piracy or copytheft of any kind, I do have two words for Mr. Isaacson: COPY, PASTE." Isaacson was on The Daily Show Monday night, where Jon Stewart wondered how you can get people to pay for somthing they've been getting free, says Daily Cartoonist (which takes the opportunity to embed prehistoric video of a 1981 newscast about people reading the San Francisco newspapers on their home computers.) Sadly, blogs Mathew Ingram at Nieman Lab, the idea that people will suddenly volunteer to pay the full freight for all of the great journalism that newspapers dois just wishful thinkingRex Blog is just offended, as a loyal reader of free online content: "They're suggesting that my free-loading is why their product is failing." No Silence Here says free news won't go away: "I predict that journalists who lose their newspaper jobs are likely to continue practicing journalism to the extent their personal finances allow. People go into journalism because they want their voices heard. Being paid to have their voices heard was just a bonus." There are no easy answers in sight. Newspaper have dropped the ball on content, not charging for content, suggestsHitsville: "The truth was, [in the past] it didn't matter what they published. People just subscribed...For the ads, because they always had, some even for the news.Online, you have to publish stuff people want to read...That's the transition that's killing newspapers; it's something most reporters, editors and publishers never had to do."

Monday, March 30, 2009

Can anything 'real' be infinite?

We often here the terms 'infinite' and 'infinity', sometimes used in connection with the size of the universe, such as an infinite universe for example. The terms more properly belong in the world of mathematics, where for example we may have an infinitely long string of numbers as the result of a calculation, such as pi. The terms are very real to mathematics, but can anything real, not theoretical, be infinite?

An infinite Universe?

Coma galaxy cluster

Naturally in mathematics we can have infinity, numbers go on for ever, but numbers are not real, they are abstract. I cannot imagine anything 'real' that we could apply an infinite number to. The only thing I can imagine that could be really infinite is nothing, the 'nothing' I described earlier in Where did the universe come from? and we have no idea if that exists.

The concept of infinity is a puzzling one. For example: imagine a standard pack of playing cards that consists of just one of each card but two jokers. Imagine that the packs of playing cards are infinite in number (A thought exercise only of course). We therefore have more jokers than any other card in each pack, so do we have more jokers in total? You could reply that as the packs are infinite in number they can't be counted so it would be impossible to know. However, as the ratio of jokers to other cards in each pack is fixed, then at any number of packs there will always be more jokers. This would appear to indicate, that mathematically, we can have degrees of infinity. Sounds odd doesn't it? It is a valid mathematical argument though.

We have a theory for black holes that describes infinite density. See Exploding Black Holes? What does it mean, other than an unresolvable equation that occurs in mathematics? Exactly what is infinite density? Taking a rather simplistic view it could be argued that if one black hole has infinite density then nothing else can have ANY density. Clearly though in this sense we can have lots of infinite density, so the term obviously carries a meaning in mathematics that does not have the same meaning outside of it. Is the term used in the theory only because that is the way the sums work out, regardless as to its significance in the real world, or is it real?

Strictly speaking, according to Einstein's Theory of Relativity, a singularity does not contain anything that is actually infinite, only things that MOVE MATHEMATICALLY TOWARDS infinity. A black hole is formed when large stars collapse and their mass has been compressed down to a very small size and the powerful gravitational field so formed prevents anything, even light, from escaping from it. A black hole therefore forms a singularity at its centre from the concentrated mass of the collapsed star itself and from the accumulated mass that is sucked into it. A singularity's mass is therefore finite, the 'infinity' refers only to the maths.

Can we have an infinite universe for example? The answer is no, the universe is finite. Stephen Hawking in 'A Brief History of Time' (1989 page 44) describes the universe as being "finite but unbounded". The simplest answer is that as the universe is known to be expanding, it cannot possibly be infinite. To be precise, the dictionary definition of the word universe is "all that is. The whole system of things." In this sense the universe is not expanding into anything other than itself, for whatever it is expanding into is part of the universe, there being nothing else but the universe. However, for the sake of simplicity, I am referring only to our Big Bang expanding universe as 'the universe'. (Even if you happen to disagree with the Big Bang theory, the term 'universe' will still have the same meaning here, as it refers to 'our' universe only, and does not include whatever may or may not exist outside of it.) I will try and explain a finite universe as some people understandably have problems with it.

A good place to start is to understand the very real difference between infinity and a large number.

For example, imagine an ordinary size diamond, as you would expect to find set in a typical lady's engagement ring. Now imagine a super-being armed with super-tweezers, picking out atoms from this diamond one at a time, one every second, since the creation of the universe, some 13 billion years ago. How much of the diamond would by now have been removed? The answer is you couldn't tell without looking through an electron microscope, less than a millionth of the atoms would have been removed. Try and imagine how many atoms there are in that diamond. Now try and imagine how many atoms there are in the entire universe. It is a very large number, but it is finite, and is 10 followed by 80 zeros, (maybe a few more zeros, maybe a few less), expressed as 10 to the 80th. If you want to see what it looks like.........

100,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000.

0r written as - One hundred million, billion, billion, billion, billion, billion, billion. billion, billion

Even this very large number would count as nothing when compared with infinity, because infinity is NOT A LARGE NUMBER be absolutely clear on this point, IT IS NOT A LARGE NUMBER, infinity is ALL THERE IS, it is NOT a number. You could keep counting (or measuring) for ever, and never reach infinity, it is only a description. Infinity describes a thing as having no end, no limit, no boundary or edge, it literally goes on FOREVER, ad infinitum.

Because infinity is not a number, large numbers are no 'nearer' to infinity than small numbers. Number 1 billion for example is no nearer to infinity than number 1, because the two, numbers and infinity, are in no way related. It is then impossible to approach infinity, a thing is either infinite and immeasurable, or finite and measurable, it cannot be part way towards infinity. Imagine running up a 'down' escalator, never moving forward. If you run for a week you are no nearer reaching the end of the escalator than if you run for a minute, you cannot get any closer to something that has no end.

An infinite universe for example would exist in every direction forever, there could be nothing else, ONLY the universe. It is then very easy to understand why our universe cannot be infinite, it is because it is expanding. It cannot be both infinite and expanding. It could be infinite OR expanding, but CANNOT possibly be both, that is a contradiction in terms, and we do know it is expanding. For an explanation of the Big Bang and why we know the universe is expanding. See The Big Bang Theory

I understand that many people have a problem with the idea of our universe being finite, that it has an 'end' to it, a boundary. They ask what this boundary would be physically like, as though it were some form of partition that we couldn't get through. However, there is not a particular direction that we could set off in our warp speed space craft that would lead us to a boundary, no matter how far or fast we travelled. The explanation for this seeming impossibility is that space-time is curved, thus you would be travelling in a circle that only appears to be a straight line. If it were possible to direct a laser beam from here through the centre of the universe it would not hit the other side of the universe, it would eventually hit the back of your head (metaphorically speaking). Einstein demonstrated how matter in the universe distorts the space-time continuum by accurately predicting how much our Sun distorted local space. He used a total eclipse of the Sun (as the only time that stars and the Sun can be seen at the same time in close proximity) to demonstrate that a star that was behind the Sun, and therefore not visible from our line of sight, would in fact be visible (in the darkness of totality) because the Sun warps the space-time around it and thus curves the light beam around the Sun, enabling us to see the star. Strictly speaking, the Sun does not actually curve the light around itself, the entire space-time continuum is curved, the light is still travelling in a 'straight' line.

Galaxies naturally create even larger distortions, and the total mass of the universe gives a distortion that results in our 'straight' line of light curving forever through the universe and never reaching the 'end'. That's why Hawking's describes it as 'finite but unbounded'. As an aid to visualization, but not an accurate representation, consider an ant crawling around a huge beach ball and never coming to the end, it would consider the beach ball as infinite as it has no boundaries. If you now consider the ant as only a two dimensional creature and crawling round a three dimensional beach ball, you could understand why the ant would consider the beach ball to be infinite, the three dimensional picture, that shows how restricted its movement really is, is simply not available to it. Thus with the universe, from our perspective, restricted to our view from within the universe, it appears to be infinite, but this is just an illusion, we are confined to the limits of our universe and cannot escape from it. We are bounded within a finite universe.

The next question that people naturally follow up with is to ask what it is that our finite universe is expanding into. This is a good question and one that can never be answered, we will never be able to escape the confines of our universe to find out. We can only theorise about this, and there are plenty of theories to choose from. I tend to think that we are expanding into an infinite nothing, but for a fuller description check out my page Where did the universe come from? but the truth will never be known. Your guess is as good as mine, probably ;-)

So what is there within our universe that we can truly apply the term infinity to? The universe itself is finite. Infinite mass, in black holes for example, would only appear to be a mathematical description. The age of the universe is finite, and even the number of particles in it is finite.

What do I think?

I think infinity exists only as a means of description, such as found in mathematics for example, or any other thing that exists only in the abstract. I do not believe that it has any real existence in the universe such as infinite mass or infinite size. The word 'infinity' is a descriptive term and not a measure of size, and I therefore do not see how it can be applied to anything 'real', as real things can be measured.

I have come across web sites, and maybe you have also, that claim that atoms can be subdivided down into infinity, and that they contain tiny universes within them, and no doubt tiny people as well. Although science has not yet been able to prove we have reached the ultimate elementary particle from which all complexity is built, there is very strong theoretical and experimental evidence to show that quarks could be it. Smaller than quarks enters the realm of energy, not particles, as in string theory. As matter has been subdivided down from complex objects, to parts of the whole, to molecules, to atoms, to particles, to quarks, at each stage we see a simpler model, each stage is less complex than the previous level. All of which is in perfect agreement with the Big Bang model that describes how all matter is built up from simple to more complex elements, stage by stage. So when breaking down complex objects into smaller parts, it would come as a bit of a surprise if suddenly an entire universe popped up at even smaller scales than wave energy. Entire universes tend to be a bit complex!

However, if string theory is shown to be correct, then tiny loops, or strings, of vibrating wave energy may be the smallest, but they are not particles anyway, and strictly speaking quarks aren't either, as they can not exist independently outside of a particle.

Stephen Hawking in his latest book "The Universe in a Nutshell" (2001. page 176) describes the smallest possible size in our universe, termed the Planck length after Max Planck, as being in the region of a millimeter divided by a hundred thousand billion billion billion. If we were able to probe to even smaller sizes, (which is not feasible as it would require particles that reside in black holes) we would not find anything smaller, we would, according to M-theory, see the other 6 or 7 dimensions of the 10 or 11 dimensions that go to make up our universe, only 4 of which are currently observed by us.(3D + time). These extra dimensions of our universe are curled up so small that we are unable to detect them, but the mathematics of theoretical physics have long said they must exist as part of the fabric of our universe. Please note that they are not 'other dimensions' with other universes, merely the smallest possible unit of our universe.

I think we can quite safely rule out infinite smallness.

Some claim that our universe is but an atom of another 'mega-universe', thus giving an infinite expansion in size. If our universe is finite (as indeed it is believed to be) then anything at all may be postulated as to what it may be that it exists in and is expanding into. You could for example propose that our universe is indeed an atom of a 'mega-universe' but equally you could propose that it as an atom of a mega-donkey's hind leg, but as neither hypotheses is testable or falsifiable there is little point in proposing them. That's why this argument regarding infinity is restricted to just our known universe. However, although the idea that our universe may be a single atom within a 'mega-universe' may have some appeal, it is rather fanciful, and our universe bears absolutely no resemblance whatsoever to the atoms that we observe, or indeed to the particles within those atoms. Sorry, sounds fun but just doesn't match up with observation.

I do not believe that infinity exists in our universe.

Please take a moment to register your vote on the poll, and to make a comment if you wish. Thank you.

Is infinity real?

Do you believe our known universe contains any 'real' infinities other than those found in mathematics?


Current Results

 

Contact me: EMAIL

It is not always possible to answer all emails, but all will be read and noted. Thank you.

Search this site

Book details page: "Science, the Universe and God"

Return to Home Page

Why can't we divide by zero?


Understanding Mathematics by Peter Alfeld, Department of Mathematics, University of Utah

Why can't we divide by zero?


The reason that the result of a division by zero is undefined is the fact that any attempt at a definition leads to a contradiction.

To begin with, how do we define division? The ratio r of two numbers a and b:

r=a/b

is that number r that satisfies

a=r*b.

Well, if b=0, i.e., we are trying to divide by zero, we have to find a number r such that

r*0=a. (1)
But
r*0=0

for all numbers r, and so unless a=0 there is no solution of equation (1).

Now you could say that r=infinity satisfies (1). That's a common way of putting things, but what's infinity? It is not a number! Why not? Because if we treated it like a number we'd run into contradictions. Ask for example what we obtain when adding a number to infinity. The common perception is that infinity plus any number is still infinity. If that's so, then

infinity = infinity+1 = infinity + 2

which would imply that 1 equals 2 if infinity was a number. That in turn would imply that all integers are equal, for example, and our whole number system would collapse.

What about 0/0?

I said above that we can't solve the equation (1) unless a=0. So, in that case, what does it mean to divide by zero?

Again, we run into contradictions if we attempt to assign any number to 0/0.

Let's call the result of 0/0z, if it made sense. z would have to satisfy

z*0=0. (2)

That's OK as far as it goes, any number z satisfies that equation. But it means that the result of 0/0 could be anything. We could argue that it's 1, or 2, and again we have a contradiction since 1 does not equal2.

But perhaps there is a number z satisfying (2) that's somehow special and we just have not identified it? So here is a slightly more subtle approach. Division is a continuous process. Suppose b and c are both non-zero. Then, in a sense that can be made precise. the ratios a/b and a/c will be close if b and c are close. A similar statement applies to the numerator of a ratio (except that it may be zero.)

So now assume that 0/0 has some meaningful numerical value (whatever it may be - we don't know yet), and consider a situation where both a and in the ratio a/b become smaller and smaller. As they do the ratio should become closer and closer to the unknown value of 0/0.

There are many ways in which we can choose a and b and let them become smaller. For example, suppose that a=b throughout the process. For example, we might pick

a=b = 1, 1/2, 1/3, 1/4, ....

Since

a=b,

for all choices of a we get the ratio 1 every time! This suggests that 0/0 should equal 1. But we could just as well pick

b = 1, 1/2, 1/3, 1/4, ....

and let a be twice as large as b. Then the ratio is always 2! So 0/0 should equal 2. But we just said it should equal 1! In fact, by letting a be r times as large as b we could get any ratio r we please!

So again we run into contradictions, and therefore we are compelled to

let 0/0 be undefined.

It's a common strategy in teaching to simplify concepts when they are first encountered. In other words, it's common for your teacher to lie to you. I just did! Actually, there is a way to make sense of the expression 0/0. The basic idea is to let both the numerator and the denominator become smaller and smaller, and to make the value of 0/0 dependent upon the way in which numerator and denominator approach 0. This is explained more thoroughly here.


Fine print, your comments, more links, Peter Alfeld, PA1UM

[17-Feb-1997]