Decomposition: Breaking down data, processes, or problems into smaller, manageable parts
Pattern Recognition: Observing patterns, trends, and regularities in data
Abstraction: Identifying the general principles that generate these patterns
Algorithm Design: Developing the step by step instructions for solving this and similar problems