Ready to watch this entire course?
Become a member and get unlimited access to the entire skills library of over 4,987 courses, including more Web and personalized recommendations.Start Your Free Trial Now
- View Offline
While computers are great at solving computations and managing large amounts of data, they are also far from infallible. In fact, computers are excellent at producing the wrong result and using enormous resources to solve very simple problems. Let me give you an example to put this into perspective. On this table, I've placed some items including tennis balls, a red apple, a pear, a muffin and a photo of a green apple.
Now, let's imagine two contestants tasked with finding the green apple in the shortest amount of time. Contestant one, is a human who has never seen or tasted an apple before. Contestant two, is a robot controlled by an advanced computer. Each are provided with a Wikipedia article about apples, for reference. More than likely, the human will scan the table, identify all apple shaped objects, and quickly exclude them. Almost immediately finding the photo to ask if that's what I was referring to.
Now imagine the computer trying to do the same task. The computer will scan the room and find all objects, including the table, any chairs, or people, or other things in the room. And then start excluding them based on parameters gleaned from the Wikipedia article. After excluding all items not small and round, it will start testing the consistency of all the apple like objects. And after doing this, return to say there is no green apple. What the computer lacks that the human has, is the ability to interpret the situation and think outside the normal parameters presented.
The human brain will quickly make the connection that although the photo clearly isn't an apple, it can be referred to as an apple. The computer, on the other hand, will dismiss the photo because it isn't an apple. In fact, the only way to get the computer to recognize the photo as an apple, is to explicitly tell it. That the apple we are looking for is not an actual apple and is two dimensional. And even then, we may have to be so specific, we are in reality describing the exact item we are looking for.
Computers and computer logic, is limited by the computer's inability to think outside the box and approach a problem in a contextual way. They understand input only as it pertains to true/false situation. The object is round or not round. The color is green or not green. And have no ability to further interpret the data. Whatever instructions the computer is given, will be interpreted literally and if the instructions are not specific enough to identify exactly what is requested.
Through a series of true false tests, it'll never return the desired result. Computers also cannot impose scope limitations upon themselves, and unless specified, will do far more work than necessary. In the example above, the human would never even think about the furniture in the room. But because the computer was not told explicitly to ignore anything larger than an apple. It will check the table to see if it's small, round, green and has the consistency of an apple, before moving on to the next item.
Computers can also find extremely inefficient ways to solve very simple problems. If I spread 999,990 grains of rice on this table. And then place ten marbles in the pile and tell a human, there are one million objects on the table. How many of them are green? The human will instantly count the green marbles and answer ten.
Give the same task to a computer, and it'll identify each individual item and start counting them, one after the another. Checking them for green, true or not green, false before moving on to the next item. Only when every one of the 999,990 grains of rice and the green marbles are counted, will it return ten as the answer. Because of the computer's strict adherence to logic principles, its linear approach, and its inability to understand and interpret its surroundings.
We have to give it explicit and limiting instructions to prevent it from wasting resources, doing unnecessary work. Just like when giving a human instructions, our programs have to provide the most efficient route from A to B. But unlike humans, we cannot rely on the computer to make assumptions or judgements for us.
The core idea of logic is to create a system in which communication is clear, precise, and unambiguous, which is (or at least should be) the goal of any website or other communication.
- How humans communicate
- Comparing human and computer communication
- Speaking logically
- Using logical arguments
- Understanding the limits of computer logic
- Formatting information for humans
- Communicating with logic