1. A method comprising: accepting, by a computer processor of a computing system executing an input and response generation layer of a software application, queries and assumptions associated with shopping habits of a shopper; generating, by said computer processor executing a content query engine of said software application, responses to said queries, said responses associated with product features for products; characterizing, by said computer processor executing a heuristic reasoning engine of said software application; a group of shoppers and associated interests resulting in a creation of a group of recommended products, said group of shoppers associated with said shopper, wherein said characterizing comprises: analyzing mined shopper choice models; analyzing purchase behavior based grouping and categorization models of products of different types to support guided navigation; analyzing truth maintenance data combined with conditional probabilities to support exploration in the context of the guided navigation; and executing statistical models resulting in generated scores, probabilities, and probabilistic data; generating, by said computer processor executing said heuristic reasoning engine, pairs of grouped listings of said products and associated assumptions; generating, by said computer processor, tree based probabilistic models comprising rules and facts associated with said assumptions, wherein said tree based probabilistic models classify said group of shoppers, shopping behaviors associated with said group of shoppers, inferred interests associated with said group of shoppers, and wherein said tree based models are configured to group products of various types; generating, by said computer processor, groups of alternate results for a rewritten query of said queries; maintaining, by said computer processor, a record of dependencies associated with individual rules that have been activated with additional rules, additional facts, and additional assumptions used to activate the rules; generating, by said computer processor, on request justifications for a specified rule activated as an explanatory tree; determining, by said computer processor executing a dependency directed backtracking process with respect to said characterizing, alternative products associated with said recommended products; and managing, by said computer processor executing a truth maintenance engine of said software application, a consistency of assumptions generated during said executing said dependency directed backtracking process.