Garbage in, garbage out

Garbage in, garbage out (GIGO) is a long-standing principle of computer programming and algorithm design. It means that it doesn't matter how good your logic is; if your input is bad, your output will be nonsense. In philosophical terms, your argument may be valid, but not sound.
Common sources of garbage input include cherry-picked or elided data, disproved "common sense", small sample sizes (and anecdotes), and outright lies, as well as equivocation over definitions. Garbage outputs are occasionally correct, but if they got there by the wrong path, they aren't of very much use.
==Correcting data==
Within mathematically defined limits, error correction of various kinds of data is possible, and sometimes this does mean that "garbage" input can yield good output. However, if such processes or algorithms are used correctly, then by definition they're not fed invalid input – while e.g. feeding pure noise into a noise filter, or trying to correct a bias using faulty reference values, very much means that GIGO still plays out.
In signal processing terms, the two main possible problems with data are bias (a.k.a. inaccuracy) and noise (a.k.a. imprecision). There are also various statistical methods that can take a collection of unreliable data, and "correct" it (or at least come closer to the truth). There are a few restrictions to these methods, and misusing them means that GIGO still plays out.
#The bad data must be at least slightly good, relevant, and based on something real. If there's no more than noise, nothing useful can be got by filtering for noise. You're almost certainly not going to get an accurate temperature from a random number generator, or a measurement unit that's measuring the wrong thing.
#You must know the input is unreliable beforehand. If you go in assuming the input is better than it actually is, you'll wind up with garbage output regardless.
#There usually needs to be something accurate to compare it to. We can measure and compare the temperature inside a clothes drier directly (if expensively), which allows us to figure out with relative certainty how bad the cheaper sensors we'll actually install in the drier are. Measuring the temperature of distant stars, which we have only predictions and very indirect methods of measuring, is going to have a much larger error bar.
#Such methods have error ranges; because our tools are inaccurate and imprecise, we can only speak in terms of percent certainty (e.g., "There's a 95% chance the inside of the drier is between 70 and 73 degrees Celsius").
To correct for bias, a reference target is needed, as mentioned above. Filtering to remove noise has a cost in lost information, i.e. you can't perfectly separate the noise from the signal, so you either include some noise or exclude some signal (which may make for a "blurry" result).
==Examples==
===Pascal's wager===
Let's examine Pascal's wager as an example of how this applies to debate tactics:
#If you believe in God and God does exist, you will be rewarded with eternal life in Heaven: thus an infinite gain.
#If you do not believe in God and God does exist, you will be condemned to remain in Hell forever: thus an infinite loss.
#If you believe in God and God does not exist, you will not be rewarded: thus a finite loss.
#If you do not believe in God and God does not exist, you will not be rewarded, but you have lived your own life: thus a finite gain.
A purely logical analysis of the statements as such suggests that the best option must necessarily be to believe in God. However, it can easily be argued that Pascal's premises were wrong. Pascal assumes that only one kind of faith (and therefore, one God) mattered. Pascal ignores the variety of human religious experiences, immediately invalidating the premises themselves, and therefore making the logical conclusion garbage.
==See also==
*Big lie
*Cherry-picking
*Delusion
*Denialism
*Elision
*Fractal wrongness and Not even wrong: When neither premises nor logic is correct, you wind up here.
==External Links==
*
==References==
Category:Evaluating arguments