I am looking for a word or term for the concept of solving a problem that oneself created.
An example would be a solution to smog: if there wasn't so much emission and pollution, there would be no problem and so no need to find a solution.
I guess one could say it's solving a problem which was inadvertently created.
First off, many thanks to both Derezzed and Aldfrith for the answers and input.
I suppose auto,- or fault-correcting does in some sense cover the concept but
it suggests an inherent fault in the code or the programming:
if CONDITION = X result = 'ok' else, if CONDITION = Y then result = 'autocorrect'
In other words the computer fixes the issue because it already knows the problem.
I guess what I'm looking for is different, in the sense that the problem is not inherent
or perhaps fabricated and the solution more reactionary (with, or without intent).
- An example with intent would be creating a computer virus and then figuring out the solution.
- An example without intent would be building a bridge and discovering that one of the bases
is threatening or interfering with a local fish population,
thus creating the need to finding a solution for said fish population.
Though the intent was simply connecting point A to point B,
nonetheless a new problem was created by happenstance.
If we would not have built the bridge,
there would be no problem and no need for a solution.
I guess the concept or word would be more in lines with auto-created-problem or,
for lack of a better word :P, serendipitous problem.
Best Answer
One word that comes to mind is undo, which carries the meaning of rolling back to a point before an action was carried out. To cover the whole process, though, you would still need to use another word like fault-correction.
There is also the more general term, process, which admittedly does not specifically indicate that there was a problem. However, your general situation is covered by this word.
It depends a little on how you plan to use the term.