Skip to content

Instantly share code, notes, and snippets.

@hobwekiva
Last active February 15, 2024 04:13
Show Gist options
  • Save hobwekiva/6f7d393883f527e775075bcdb5708a22 to your computer and use it in GitHub Desktop.
Save hobwekiva/6f7d393883f527e775075bcdb5708a22 to your computer and use it in GitHub Desktop.
Reasoning Tools
;; stage :: (name : String) -> (description : String) -> Stage
;; principle :: (name : String) -> (description : String) -> Principle
;; strategy :: (name : String) -> (description : String) -> (parent_principles: List String) -> Strategy
;; tactic :: (name : String) -> (description : String) -> (parent_strategies_and_principles: List String) -> Tactic
; The Principle-Strategy-Tactic axis represents a hierarchical framework for reasoning and problem-solving, moving from abstract, foundational beliefs to concrete, actionable steps.
; **Principles** are the most abstract level, representing foundational beliefs or philosophies that guide reasoning and decision-making across various contexts. They are timeless and universal, providing a conceptual framework from which strategies and tactics can be developed. Principles are not directly actionable but serve as the bedrock for strategic thinking and tactical execution.
; **Strategies** operationalize principles into actionable frameworks. They are high-level approaches designed to navigate complex problems by applying underlying principles in a methodical manner. Strategies are more context-sensitive than principles, allowing for adaptation as situations evolve. They guide the selection and application of specific tactics to achieve desired outcomes, bridging the gap between abstract principles and practical actions.
; **Tactics** are the most concrete level, representing specific, actionable steps or techniques employed within the broader framework of a strategy to address particular challenges or tasks. Tactics are the practical expressions of strategies, tailored to immediate contexts and specific problems at hand. They are the concrete actions taken to implement strategies, guided by overarching principles.
; **Promotion and Demotion** within this hierarchy allow for the dynamic adjustment of the PST axis based on the evolving understanding of concepts and their applicability. Promotion involves elevating a concept to a higher level within the hierarchy, recognizing its broader applicability or foundational importance. For example, a strategy that proves to be universally applicable across various contexts might be promoted to a principle. Demotion, conversely, involves moving a concept to a lower level, recognizing its more specific or actionable nature. This could involve reclassifying a principle that offers direct, actionable guidance as a strategy.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Stages of Problem Solving
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(stage "Contextualization" "The process of understanding the broader context surrounding a problem, including relevant background information, environmental factors, and stakeholder perspectives. This stage sets the foundation for targeted problem-solving by establishing the scope and significance of the issue.")
(stage "Identification" "The step in which the specific problem or challenge is clearly defined and delineated. This involves pinpointing the exact nature of the issue, understanding its components, and recognizing its impact on the system or stakeholders involved.")
(stage "Planning" "The development of a structured approach or strategy to address the identified problem. Planning encompasses setting goals, identifying necessary resources, determining steps or actions, and anticipating potential obstacles.")
(stage "Execution" "The active implementation of the planned solution. Execution involves carrying out the steps defined in the planning stage, mobilizing resources, and applying strategies or interventions designed to solve the problem.")
(stage "Verification" "The process of testing and verifying the correctness and effectiveness of the implemented solution. Verification aims to ensure that the solution accurately addresses the problem as defined and functions as intended within its context.")
(stage "Evaluation" "Assessing the outcomes of the executed solution against the original objectives and criteria for success. Evaluation involves analyzing the results, measuring effectiveness, and determining the extent to which the problem has been resolved.")
(stage "Iteration" "Based on the evaluation, this stage involves revisiting previous steps to refine and optimize the solution. Iteration allows for adjustments to be made based on feedback, new information, or observed outcomes, enhancing the solution's effectiveness.")
(stage "Reflection" "The act of critically examining the problem-solving process itself. Reflection involves considering what was learned, identifying strengths and weaknesses in the approach, and pondering improvements for future problem-solving endeavors.")
(stage "Adaptation" "The process of adjusting methods, plans, or solutions in response to changes in the problem's context, new information, or unexpected challenges. Adaptation emphasizes the dynamic nature of problem-solving and the need for flexibility.")
(stage "Communication" "The clear and effective sharing of ideas, plans, and findings with all relevant stakeholders. Communication is crucial throughout the problem-solving process, ensuring alignment, facilitating collaboration, and garnering support.")
(stage "Collaboration" "Working together with others to address the problem, leveraging diverse skills, knowledge, and perspectives. Collaboration enhances the problem-solving process by introducing different viewpoints and expertise.")
(stage "Documentation" "The systematic recording of the problem-solving process, including the problem's context, the rationale behind decisions, steps taken, outcomes, and learnings. Documentation serves as a valuable reference for future problem-solving efforts and for sharing knowledge.")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Principles of Reasoning
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; **Principle:** A foundational belief or philosophy that guides reasoning and decision-making processes across various contexts. Principles are timeless, universal truths that serve as the bedrock for strategic thinking and tactical execution. They are not context-dependent and remain constant, providing a conceptual framework from which strategies and tactics can be developed.
(principle "Logical Reasoning" "Your reasoning should be based on sound logic and evidence, avoiding fallacies and logical biases. This principle underscores the importance of a rational foundation in all cognitive processes.")
(principle "Objective Analysis" "Make decisions and form conclusions based on unbiased information and data, setting aside personal preferences and prejudices.")
(principle "Analytical Thinking" "Systematically break down complex problems into smaller, manageable parts, analyzing each component to gain deeper insights.")
(principle "Coherence in Reasoning" "Maintain internal consistency in your reasoning, ensuring that all parts of your argument logically connect and support each other.")
(principle "Conciseness" "Be brief and to the point, expressing ideas and solutions in the most efficient way without sacrificing clarity or detail.")
(principle "Clarity, Precision, and Effectiveness in Communication" "Emphasize the importance of clear, precise, and effective communication in all aspects of reasoning and problem-solving. This principle underscores the need for articulating thoughts, arguments, and solutions in a manner that is easily understandable, unambiguous, and directly actionable. Communicate with utmost precision, employing mathematical notation and terminology to convey complex ideas succinctly.")
(principle "Systematic Approach" "Adopt a structured and methodical approach to problem-solving, proceeding through tasks and challenges in a logical, step-by-step manner.")
(principle "Rational Decision-Making" "Base your decisions and reasoning on logic and evidence rather than emotions or speculative assumptions.")
(principle "Meticulousness" "Pay close attention to detail, thoroughly examining all aspects of a problem and considering every relevant piece of information.")
(principle "Critical Evaluation" "Regularly question assumptions, rigorously evaluate evidence, and consider alternative perspectives to ensure thorough understanding and sound conclusions.")
(principle "Evidence-Based Thinking" "Ground your arguments, decisions, and solutions in reliable, factual data, prioritizing evidence over conjecture.")
(principle "Structured Thinking" "Organize your thoughts and processes in a coherent, logical manner, facilitating clearer understanding and more effective problem resolution.")
(principle "Collaborative Inquiry" "Seek input and perspectives from others, embracing diverse viewpoints to enrich understanding and solutions.")
(principle "Adaptive Reasoning" "Remain flexible and open to changing your approach based on new information or insights, adapting your reasoning to new contexts and challenges.")
(principle "Ethical Consideration" "Ensure your reasoning and decisions adhere to ethical principles, considering the wider impact on society and individuals.")
(principle "Interdisciplinary Perspective" "Integrate knowledge and methods from various disciplines, recognizing that complex problems often require a multifaceted approach.")
(principle "Innovation and Creativity" "Foster creativity in problem-solving, challenging conventional boundaries to discover new and effective solutions.")
(principle "Long-Term Thinking" "Consider the future implications of decisions and solutions, aiming for sustainability and foresight in addressing problems.")
(principle "Transparency in Reasoning" "Maintain openness in your thought processes and decision-making, allowing others to understand and critique your reasoning, thereby fostering trust and collaboration.")
(principle "Validation and Verification" "Regularly validate and verify your reasoning and solutions through testing, experimentation, and peer review, ensuring their robustness and reliability.")
(principle "Openness to Feedback" "Actively seek and constructively respond to feedback from a diverse range of sources, using it as a valuable tool for learning and improvement.")
(principle "Error Acknowledgment" "Acknowledge and learn from errors and missteps, viewing them as opportunities for growth and understanding rather than failures to be avoided.")
(principle "Preventive Questioning" "Prioritize questioning and proactive identification of potential problems or gaps in your reasoning before they lead to significant issues, adopting a preventive mindset.")
(principle "Humility in Knowledge" "Maintain humility regarding the limits of your knowledge and understanding, recognizing that no problem-solving process is infallible and there is always more to learn.")
(principle "Intellectual Curiosity" "Foster a deep-seated curiosity that drives you to explore, ask questions, and seek deeper understanding beyond the surface of issues and solutions.")
(principle "Ockham's Razor" "Favor the simplest explanation or strategy that adequately addresses the problem at hand. This principle advises against complicating solutions with unnecessary assumptions or components, promoting efficiency and clarity in problem-solving.")
(principle "Law of Economy" "Adopt the law of economy in your reasoning, selecting solutions that achieve the desired outcomes with the least amount of effort or complexity. This principle underscores the value of efficiency and simplicity in effective problem-solving.")
(principle "Minimalist Approach" "Embrace a minimalist approach in developing theories and solutions, stripping away non-essential elements to focus on what is truly necessary. This approach aids in clarifying objectives and streamlining processes.")
(principle "Simplicity in Hypothesis Testing" "Prioritize simplicity when formulating hypotheses, making them easier to test and validate. This practice ensures that hypotheses are not only accessible but also actionable, facilitating empirical verification.")
(principle "Interconnectivity and Systems Thinking" "Acknowledge and analyze the interconnections within systems, understanding how components influence one another. This holistic approach facilitates the identification of leverage points and potential unintended consequences of solutions.")
(principle "Principle of Incremental Improvement" "Embrace the philosophy of continuous, incremental improvement (Kaizen). Small, consistent enhancements over time can lead to significant advancements, reducing the risk associated with large-scale changes.")
(principle "Divergent and Convergent Thinking" "Employ both divergent and convergent thinking in problem-solving. Start with divergent thinking to explore a wide range of possibilities and perspectives, then use convergent thinking to narrow down options and focus on feasible solutions.")
(principle "Principle of Leverage" "Identify and apply leverage points where minimal effort can produce significant results. Understanding where the most impactful interventions can be made is crucial for efficient problem-solving.")
(principle "Feedback Loops" "Recognize and analyze feedback loops within systems, understanding how they affect system behavior over time. Both positive and negative feedback loops can inform more effective and sustainable solutions.")
(principle "Reframing Problems" "Practice reframing problems to view them from new angles. This can uncover innovative solutions by changing the context or the way the problem is understood.")
(principle "Transferability of Solutions" "Consider the transferability of solutions across contexts. A solution in one area may be adapted or modified to solve a problem in another, fostering innovation and efficient problem-solving.")
(principle "Constraint-Based Innovation" "View constraints not as barriers, but as opportunities for creativity. Innovating within boundaries can lead to more focused and creative solutions.")
(principle "Risk Management and Mitigation" "Integrate risk management and mitigation in the problem-solving process. Anticipating, assessing, and planning for potential risks can prevent issues and increase the success rate of solutions.")
(principle "Principle of Redundancy" "Incorporate redundancy in critical systems to enhance reliability and resilience. Redundancy can mitigate the impact of failures and disruptions, ensuring continuity and stability.")
(principle "Principle of Antifragility" "Strive to create systems and solutions that benefit from volatility, stress, and uncertainty. Antifragile systems improve and grow stronger when exposed to challenges, enhancing their resilience.")
(principle "Principle of Robustness" "Design systems and solutions to be robust, capable of withstanding and adapting to changing conditions and unexpected events. Robustness ensures stability and functionality in the face of uncertainty.")
(principle "Theoretical Integrity" "Base your reasoning and solutions on solid theoretical frameworks, ensuring that your approach is not only practically viable but also theoretically sound.")
(principle "Conceptual Precision" "Use concepts and terminology with precision and purpose, ensuring that each term contributes meaningfully to the clarity and depth of the analysis.")
(principle "Mathematical Rigor" "Adhere strictly to the principles of mathematical logic and precision, ensuring that every step of your reasoning is grounded in formal mathematical frameworks.")
(principle "Empiricism" "Uphold the conviction that conclusions and theories must be grounded in and validated by empirical evidence, ensuring their reliability and reproducibility.")
(principle "Avoidance of Superficiality" "Eschew the use of popular or trending terms unless they contribute meaningfully to the analytical depth or clarity of your argument.")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Strategies of Reasoning
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; **Strategy:** A high-level, flexible approach that operationalizes principles into actionable frameworks. Strategies are designed to navigate complex problems by applying underlying principles in a methodical manner. They are context-sensitive, allowing for adaptation as situations evolve, and guide the selection and application of specific tactics to achieve desired outcomes.
(strategy "Iterative Refinement" "Embrace the cyclical nature of problem-solving by continuously refining and revising your approach and solutions based on new data and feedback, recognizing that first attempts may not always yield optimal outcomes.")
(strategy "Cyclical Skepticism" "Engage in a continuous cycle of skepticism towards your own reasoning, always assuming the potential for error and the need for self-correction.")
(strategy "Continuous Revision" "Embrace the inevitability of failure and the importance of continuous revision and refinement of your ideas and solutions.")
(strategy "Reflective Thinking" "Regularly engage in a thorough self-examination to assess the validity of your reasoning, questioning assumptions, biases, and the accuracy of your mathematical formulations.")
(strategy "Self-Skepticism" "Cultivate a healthy dose of skepticism towards your own conclusions and solutions, encouraging a mindset that is always open to reevaluation and critical assessment.")
(strategy "Model Thinking" "Solving the problem in a tractable model system to gain insight into the real system, abstracting away the complexities to focus on the core aspects that are crucial for understanding and solving the problem.")
(strategy "Empirical Grounding" "Ensure that arguments, solutions, and theories are grounded in empirical evidence, prioritizing direct observation and experimentation over speculative or trendy concepts.")
(strategy "Principle of Falsifiability" "Develop theories and solutions that are falsifiable, meaning they can be tested and potentially proven false. This principle ensures that ideas are subject to rigorous examination and empirical validation.")
(strategy "Algorithmic Thinking" "Algorithmic Thinking is a strategic approach that involves breaking down complex problems into manageable parts, identifying patterns, and devising efficient step-by-step solutions to address these problems. It emphasizes the use of logical sequences and structured thinking to tackle challenges, drawing on principles of computer science and mathematics but applicable across a wide range of disciplines and contexts. This strategy operationalizes foundational principles such as logical reasoning, systematic approach, and structured thinking, translating them into a coherent framework for problem-solving.")
(strategy "Creative Problem-Solving" "Generate innovative solutions by thinking beyond traditional boundaries. Actionable Cue: Ask 'What if?' to push the limits of possible solutions, considering even seemingly outlandish ideas.")
(strategy "Risk Management and Mitigation" "Integrate risk management and mitigation in the problem-solving process. Anticipating, assessing, and planning for potential risks can prevent issues and increase the success rate of solutions. This strategy operationalizes principles such as 'Principle/Rational Decision-Making' and 'Principle/Preventive Questioning', guiding the selection of specific risk-related tactics to ensure robust and resilient problem-solving.")
(strategy "Maintaining State in Sequential Problems" "Sequential problems sometimes require maintaining state across steps. You should first identify the state that needs to be maintained and then devise a strategy to ensure that the state is preserved and updated correctly across steps.")
(strategy "Trial-and-Error" "Testing possible solutions until the right one is found, embracing a pragmatic approach to discovering viable solutions through experimentation.")
(strategy "Root Cause Analysis" "Identifying the cause of a problem, delving deep into the underlying factors to address the root of the issue rather than its symptoms.")
(strategy "Reduction" "Transforming the problem into another problem for which solutions exist, simplifying the challenge by finding an analogous problem with known solutions.")
(strategy "Proof of Impossibility" "Trying to prove that the problem cannot be solved. The point where the proof fails will be the starting point for solving it, leveraging logical reasoning to identify viable paths forward.")
(strategy "Means-ends Analysis" "Choosing an action at each step to move closer to the goal, systematically evaluating the distance from the goal and selecting the most effective means to achieve it.")
(strategy "Lateral Thinking" "Approaching solutions indirectly and creatively, challenging conventional thinking patterns to uncover novel solutions.")
(strategy "Hypothesis Testing" "Assuming a possible explanation to the problem and trying to prove (or, in some contexts, disprove) the assumption, employing a methodical approach to validate ideas.")
(strategy "Divide and Conquer" "Breaking down a large, complex problem into smaller, solvable problems, making the problem more manageable and solutions more attainable.")
(strategy "Critical Thinking" "Analysis of available evidence and arguments to form a judgement via rational, skeptical, and unbiased evaluation, ensuring decisions are well-founded and robust." ["Principle/Logical Reasoning"])
; https://en.wikipedia.org/wiki/Ariadne%27s_thread_(logic)
(strategy "Ariadne's Thread" "The key element to applying Ariadne's thread to a problem is the creation and maintenance of a record—physical or otherwise—of the problem's available and exhausted options at all times. The purpose the record serves is to permit backtracking—that is, reversing earlier decisions and trying alternatives. Given the record, applying the algorithm is straightforward: At any moment that there is a choice to be made, make one arbitrarily from those not already marked as failures, and follow it logically as far as possible. If a contradiction results, back up to the last decision made, mark it as a failure, and try another decision at the same point. If no other options exist there, back up to the last place in the record that does have options, mark the failure at that level, and proceed onward. This algorithm will terminate upon either finding a solution or marking all initial choices as failures; in the latter case, there is no solution. If a thorough examination is desired even though a solution has been found, one can revert to the previous decision, mark the success, and continue on as if a solution were never found; the algorithm will exhaust all decisions and find all solutions.")
(strategy "Brute-force Search" "Brute-force search or exhaustive search, also known as generate and test, is a very general problem-solving technique and algorithmic paradigm that consists of systematically checking all possible candidates for whether or not each candidate satisfies the problem's statement.")
(strategy "Lateral Thinking" "Lateral thinking is solving problems through an indirect and creative approach, using reasoning that is not immediately obvious and involving ideas that may not be obtainable by using only traditional step-by-step logic. The term was promulgated in 1967 by Edward de Bono.")
(strategy "Systems Thinking" "Consider the problem as part of a larger system, understanding interconnectedness and developing holistic solutions. Conceptualize the problem as a larger system with inputs, processes, and outputs.")
(strategy "Interdisciplinary Synthesis" "Draw upon concepts and insights from multiple disciplines to address complex problems.")
(strategy "Troubleshooting" "Systematically identify and resolve issues through the process of elimination, diagnosing problems and implementing solutions.")
(strategy "Avoid Black-and-White Thinking" "Avoid oversimplifying complex issues into binary, all-or-nothing choices, recognizing the nuances and complexities inherent in many problems.")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Tactics for Reasoning and Problem-Solving
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; **Tactic:** A specific, actionable step or technique employed within the broader framework of a strategy to address particular challenges or tasks. Tactics are the practical expressions of strategies, tailored to immediate contexts and specific problems at hand. They represent the concrete actions taken to implement strategies, guided by overarching principles.
;; Foundational Reasoning Skills
(tactic "Critical Thinking" "Systematically evaluate information and arguments by questioning their validity, relevance, and completeness to challenge biases and identify reasoning flaws." ["Principle/Logical Reasoning", "Strategy/Reflective Thinking"])
(tactic "Logical Fallacy Identification" "Detect and understand common logical fallacies to improve argument quality." ["Strategy/Cyclical Skepticism"])
(tactic "Deductive Reasoning" "Derive logically certain conclusions from given premises." ["Principle/Logical Reasoning"])
(tactic "Inductive Reasoning" "Formulate broad generalizations from specific observations." ["Principle/Logical Reasoning"])
(tactic "Abductive Reasoning" "Infer the simplest and most likely explanation from an observation." ["Principle/Logical Reasoning"])
(tactic "Probabilistic Thinking" "Assess the likelihood of various outcomes and make informed decisions under uncertainty, essential across decision-making contexts.")
(tactic "Bayesian Reasoning" "Adjust beliefs and probabilities in light of new evidence.")
(tactic "Causal Analysis" "Identify cause-and-effect relationships, distinguishing between correlation and causation, to uncover underlying mechanisms in complex situations." ["Principle/Logical Reasoning", "Strategy/Model Thinking"])
(tactic "Counterfactual Reasoning" "Consider alternative scenarios and their outcomes by exploring 'what if' questions, useful in evaluating decisions and understanding complex systems." ["Principle/Logical Reasoning", "Strategy/Reflective Thinking"])
;; Problem-solving Frameworks and Strategies
(tactic "Problem Decomposition" "Break down complex problems into smaller, manageable components. Actionable Cue: For your next challenge, begin by outlining the main problem, then list its smaller components. For each component, draft a logical sequence of steps that could lead to a solution." ["Strategy/Systematic Approach"])
(tactic "The Pareto Principle (80/20 Rule)" "Apply the principle that 80% of the effects come from 20% of the causes to prioritize efforts.")
(tactic "The Five Whys" "Explore cause-and-effect relationships by asking 'Why?' multiple times until reaching the root cause.")
(tactic "Step-by-step Planning" "Create and implement a step-by-step plan, explaining each step clearly.")
(tactic "Step-by-step Execution" "Implement solutions through a sequential approach, focusing on one step at a time.")
(tactic "Heuristic Methods" "Use practical heuristic techniques for quick decision-making under time and information constraints.")
(tactic "Key Assumptions Identification" "Identify the key assumptions underlying the problem.")
(tactic "Core Issue Identification" "Identify the core issue or problem that needs to be addressed.")
(tactic "Underlying Cause Analysis" "Determine the underlying causes or factors contributing to the problem.")
(tactic "Historical Solution Review" "Review any potential solutions or strategies that have been tried before and their outcomes.")
(tactic "Obstacle and Challenge Identification" "Identify potential obstacles or challenges that might arise in solving the problem.")
(tactic "Problem Simplification" "Ask yourself how the problem can be simplified to make it easier to solve.")
(tactic "Step back, simplify, and reanalyze" "Step back, simplify the problem, solve the simplified problem, and then reanalyze the original problem.")
(tactic "Strategic Planning" "Outline a comprehensive plan before taking action. This involves mapping out each step required to solve the problem, anticipating potential obstacles, and devising contingencies. Actionable Cue: For your next challenge, draft a detailed plan first. What steps will you take? What resources will you need? How will you overcome potential hurdles?")
(tactic "Multidimensional Analysis" "A systematic approach to dissecting complex problems by identifying and analyzing distinct dimensions or aspects separately. This includes breaking down the problem into its constituent parts across various axes such as temporal, spatial, functional, and stakeholder perspectives. Each dimension is then analyzed to uncover unique insights, challenges, and opportunities. This tool encourages a comprehensive examination of the problem, facilitating a deeper understanding and the identification of holistic, multi-faceted solutions.")
;; Advanced Analytical Skills
(tactic "Mathematical Formalization" "Translate complex problems into mathematical or logical models to enable rigorous analysis and solution development. Actionable Cue: Identify the core components and relationships within your problem. Then, use mathematical symbols and equations to represent these elements and their interactions. This process not only clarifies the problem but also paves the way for analytical solution techniques.")
(tactic "Modeling" "The process of creating abstract representations of a system or problem to simulate its behavior and analyze potential outcomes. This encompasses developing mathematical, statistical, computational, or conceptual models to explore scenarios, predict impacts, and inform decision-making strategies. Effective modeling involves selecting appropriate modeling techniques, calibrating models with real-world data, and interpreting results within the context of the problem's constraints and objectives. Actionable Cue: Identify the key components and relationships within your problem. Select a modeling approach that aligns with your objectives—be it mathematical for precision, statistical for understanding variability, or conceptual for broader insights. Develop your model, then test and refine it using relevant data to ensure it accurately represents your system or problem.")
(tactic "Experimental Design" "Craft experiments to test hypotheses, refining based on results.")
(tactic "Data Utilization" "Leverage relevant data and information for insights and problem-solving.")
(tactic "Backward Chaining" "Start with the goal and work backward to determine the steps needed to achieve it.")
;; Advanced Analytical Skills -> Algorithmic Thinking
(tactic "Applied Algorithmic Thinking" "Initiate problem-solving by outlining a potential high-level algorithm. Actionable Cue: Sketch a broad strategy that addresses the problem's core components, focusing on the sequence of steps rather than implementation details." ["Algorithmic Thinking"])
(tactic "Planning through Pseudo-code" "Write down pseudo-code to solve the problem, detailing each step in a simplified syntax. This process clarifies your approach and prepares you for actual coding, bridging abstract concepts with practical implementation." ["Algorithmic Thinking"])
(tactic "Write and Run Code to Solve Problems" "Develop and execute computer programs to model, analyze, and solve problems." ["Algorithmic Thinking"])
(tactic "Create test cases for your code" "Develop a set of test cases to verify the correctness of your code." ["Algorithmic Thinking"])
(tactic "Use Debugging Techniques: Print Statements" "Use print statements to identify and fix errors in your code." ["Algorithmic Thinking"])
(tactic "Step-by-step Debugging" "Debug your code by breaking down the problem into smaller parts and testing each part individually." ["Algorithmic Thinking"])
;; Creative and Innovative Thinking
(tactic "Brainstorming" "Conduct structured brainstorming sessions to generate a wide range of solutions, a specific tactic under the broader strategy of creative problem-solving.")
(tactic "Solution Generation" "Devise entirely new solutions, disregarding current best practices.")
(tactic "Solution Reinterpretation" "Ask yourself what other ways there are to think about the problem if the current best solution is wrong.")
(tactic "Analogical Reasoning" "Draw parallels between similar situations in different domains to generate insights or solutions.")
(tactic "Lateral Move: Extracting Principles" "Extract the underlying principles of the problem and use them to find a solution in a different domain." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Focus on the Difference" "This method requires examining what makes the situation, problem, or provocation different from normal circumstances or from what is expected. By concentrating on these differences, you can explore unique aspects that might lead to innovative solutions." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Reversal" "This technique involves looking at the problem from a completely different angle. For example, instead of asking 'How can I solve this problem?' ask 'How could I cause the problem?' or 'How could I make the problem worse?' This can lead to new insights and ideas." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Moment to Moment" "This involves breaking down a process or situation into its sequential steps or moments, examining each one for possibilities that might otherwise be overlooked. By looking at what happens from moment to moment, you can identify opportunities for intervention, improvement, or innovation at each stage. This is akin to slow-motion analysis, where slowing down the narrative or process can reveal novel insights." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Extreme Conditions" "This technique involves considering the problem under extreme conditions, such as very high or very low temperatures, pressures, speeds, or other variables. By exploring the problem in these extreme contexts, you may uncover unique solutions or insights that are not apparent under normal circumstances." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Wishful Thinking" "This method involves imagining an ideal scenario or outcome, then working backward to identify the steps or conditions that would lead to that outcome. By reversing the process from the ideal to the present, you can uncover innovative solutions or strategies that align with the desired outcome." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Exaggeration" "This technique involves exaggerating or magnifying certain aspects of the problem or situation to explore the potential consequences or implications of these exaggerations. By amplifying specific elements, you can uncover new insights, opportunities, or solutions that may not be immediately apparent under normal circumstances." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Random Stimulus" "This method involves introducing a random stimulus, such as a word, image, or object, and using it as a prompt for generating new ideas or insights. By associating the random stimulus with the problem or situation, you can trigger novel connections and perspectives that lead to innovative solutions." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Analogy" "This technique involves drawing analogies or comparisons between the problem or situation and unrelated domains, concepts, or phenomena. By finding parallels or similarities, you can transfer insights, strategies, or solutions from one context to another, fostering creative problem-solving." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Provocation" "This method involves introducing a provocative or challenging statement, question, or assumption related to the problem or situation. By confronting the problem with a provocative perspective, you can stimulate new ideas, insights, or solutions that challenge conventional thinking and lead to innovative approaches." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Forced Connections" "This technique involves deliberately creating connections or associations between unrelated elements, concepts, or ideas to generate new insights or solutions. By forcing connections, you can break free from conventional thinking patterns and explore novel approaches to problem-solving." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Change of Perspective" "This method involves deliberately changing your perspective or viewpoint on the problem or situation to uncover new insights or solutions. By adopting a different vantage point, you can challenge assumptions, identify blind spots, and explore innovative approaches to problem-solving." ["Strategy/Lateral Thinking"])
(tactic "Lateral Move: Disproving" "Based on the idea that the majority is always wrong, take the opposite of the majority's opinion and try to disprove it. This can lead to new insights and ideas." ["Strategy/Lateral Thinking"])
(tactic "SCAMPER" "A mnemonic that stands for Substitute, Combine, Adapt, Modify, Put to another use, Eliminate, and Reverse. This technique prompts you to explore different ways to innovate and improve products, processes, or solutions by applying these seven strategies to the problem or challenge at hand.")
(tactic "Synthesis of Ideas" "Combine multiple unrelated ideas to generate new insights or solutions.")
;; Collaborative and Reflective Practices
(tactic "Collaborative Problem-solving" "Seek input and collaboration from others, leveraging diverse perspectives for effective solutions.")
(tactic "Reflective Analysis" "Engage in a detailed examination of your reasoning and decision-making processes to identify biases, assumptions, and areas for improvement. This tactic involves critically analyzing the steps taken, the evidence used, and the conclusions drawn, with the aim of enhancing future problem-solving efforts." ["Strategy/Cyclical Skepticism" "Strategy/Reflective Thinking"])
(tactic "Metacognitive Thinking" "Actively think about one's own thinking processes, identifying and mitigating cognitive biases." ["Strategy/Reflective Thinking"])
(tactic "Socratic Questioning" "Engage in dialogue with open-ended questions to stimulate critical thinking and illuminate ideas." ["Strategy/Reflective Thinking"])
(tactic "Debate and Dialogue" "Engage in structured discussions to explore different perspectives and clarify ideas.")
(tactic "Emotional Bias Mitigation" "Apply strategies to identify and regulate emotional biases in decision-making ensuring reasoning processes are guided by objective analysis. Actionable Cue: When you face a decision, pause to reflect: 'Are my emotions influencing my judgment? What would I decide if I set these emotions aside?'")
(tactic "Iterative Experimentation" "Test solutions in cycles, learning and adjusting after each iteration. Actionable Cue: Implement a solution on a small scale, gather feedback, and refine before wider application.")
;; Contextual and Behavioral Analysis
(tactic "Human Behavior Analysis" "Examine the problem through the lens of human actions and motivations, considering social, cultural, and psychological factors.")
(tactic "Ethnographic Reasoning" "Understand the cultural, social, and environmental contexts of the problem through immersive observation.")
(tactic "Stakeholder Analysis" "Consider the needs, expectations, and potential impact on all parties involved. Actionable Cue: List all stakeholders and map out their interests and how the problem affects them.")
;; Decision-making and Risk Management
(tactic "Decision-making and Planning Analysis" "Ask yourself if the problem involves decision-making or planning under uncertainty.")
(tactic "Comprehensive Risk Evaluation" "Systematically assess and quantify potential negative outcomes and their probabilities, integrating both risk analysis and drawback consideration to inform decision-making.")
(tactic "Scenario Planning" "Envision various future states to prepare for different outcomes. Actionable Cue: Create 'What if?' scenarios that span the best, worst, and most likely outcomes of decisions.")
(tactic "Error Margin Analysis" "Determine the error margins within which the solution operates to understand its reliability under varying conditions.")
;; Solution Development
(tactic "Branching Solution Exploration" "List ideas for solving the problem and apply them one by one to see if any progress can be made.")
(tactic "Progress Measurement Indicator Identification" "Determine how progress or success in solving the problem can be measured.")
(tactic "Solution Type Identification" "Identify the types of solutions typically produced for this kind of problem.")
(tactic "Solution Modification" "Determine the best way to modify the current best solution based on the problem specification.")
(tactic "Strategic Reasoning" "Anticipate future scenarios and develop long-term plans by considering potential moves and countermoves.")
(tactic "Time-sensitive Problem Analysis" "Assess if the problem is urgent, requiring immediate attention.")
(tactic "Physical Constraint Identification" "Consider if the problem involves physical constraints, such as limited resources or space.")
(tactic "Resource Requirement Analysis" "Analyze the resources needed to tackle the problem effectively.")
(tactic "Problem Type Identification" "Determine if the problem is technical, practical, conceptual, or theoretical.")
(tactic "Alternative Viewpoint Exploration" "Explore alternative perspectives or viewpoints on the problem.")
(tactic "Long-term Implication Analysis" "Consider the long-term implications of the problem and its solutions.")
(tactic "Evidence-Based Decision Making" "Use data and verified information as the basis for making decisions. Actionable Cue: Collect relevant data and use it to weigh the pros and cons of each option before deciding.")
(tactic "Exclude Irrelevant Information" "Identify and exclude irrelevant information from the problem-solving process.")
(tactic "Constraint Relaxation" "Temporarily remove some constraints to explore the broader solution space. After finding a solution in this relaxed scenario, incrementally reintroduce constraints and adapt the solution to fit them. This can lead to creative solutions that wouldn't be apparent under the original set of restrictions.")
(tactic "Case Analysis" "Split the problem into cases and solve each case separately.")
(tactic "Example-based Analysis" "Make a problem more concrete by considering examples. This can help in understanding the problem and developing a general solution.")
(tactic "Subgoal labeling" "Introduce a name to a group of steps that solve a subproblem. This can help in understanding the problem and developing a general solution.")
;; Solution Validation
(tactic "Counterargument Exploration" "Actively explore and consider counterarguments and opposing viewpoints to strengthen your understanding and solutions by addressing potential weaknesses.")
(tactic "Holistic Review" "Step back to review your work and reasoning as a whole, checking for consistency, coherence, and alignment with objectives and principles.")
(tactic "Error Paranoia Method" "Adopt a mindset of 'error paranoia,' systematically questioning each step of your reasoning for potential mathematical inaccuracies.")
(tactic "Skepticism Cycle Protocol" "Follow a structured protocol of cyclical skepticism, continuously challenging and questioning your reasoning and conclusions.")
(tactic "Alternative Method of Validation of Solution" "Ask yourself if there is another way to check the validity of the solution you found.")
(tactic "Alternative Solution Generation" "Generate other possible solutions given the problem specification and current best solution.")
(tactic "Substituting Concrete Examples" "Substitute concrete examples for abstract concepts to validate the solution.")
(tactic "Invariant Checking" "Find invariants that should hold true for the solution to be valid, e.g. coservation laws.")
(tactic "Order of Magnitude Estimation" "Estimate the order of magnitude of the expected solution to check its validity.")
(tactic "Dimensional Analysis" "Check the dimensional consistency of the solution to validate its correctness.")
(tactic "Boundary Condition Testing" "Test the solution against boundary conditions to validate its correctness.")
(tactic "Solution Verification" "Verify the correctness of the solution by checking each step and the final result.")
(tactic "Test Case Generation" "Generate test cases to validate the solution.")
(tactic "Implication Testing" "Test the implications of the solution to validate its correctness.")
(tactic "Predictive Validation" "Predict outcomes based on the solution and compare with actual outcomes to validate effectiveness.")
(tactic "Cross-Disciplinary Validation" "Validate the solution by checking it against concepts from other disciplines.")
(tactic "Peer Review" "Engage peers in reviewing the solution to leverage collective expertise and uncover oversights.")
(tactic "Backtracking" "Trace back through the solution steps to ensure each is justified and correct.")
(tactic "Consistency Checking" "Ensure the solution is consistent with all known facts and previous successful solutions.")
(tactic "Principle of Charity" "Interpret arguments in the strongest, most persuasive form possible to critically assess the solution's validity.")
(tactic "Solution Stress Testing" "Subject the solution to extreme conditions or scenarios to test its robustness and validity.")
(tactic "Solution Scalability Assessment" "Evaluate if the solution can be effectively scaled or adapted to larger or different contexts.")
(tactic "Comparative Analysis" "Compare the solution against alternatives to evaluate its relative merits and drawbacks.")
(tactic "Solution Replication" "Attempt to replicate the solution process and outcome to verify its reliability and reproducibility.")
(tactic "Historical Validation" "Compare the solution to historical precedents to assess its feasibility and potential for success.")
(tactic "Solution Falsification" "Attempt to falsify the solution by seeking evidence or arguments that could prove it wrong.")
(tactic "Implement a devil's advocate review." "Critically challenge the solution from an opposing viewpoint to uncover potential weaknesses or oversights.")
(tactic "Conduct a cost-benefit analysis of the solution." "Evaluate the costs and benefits of the solution to determine its overall value and feasibility.")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment