computer-science - Concepts
Explore concepts tagged with "computer-science"
Total concepts: 35
Concepts
- Symbolic AI - An approach to artificial intelligence based on manipulating human-readable symbols and explicit rules to represent knowledge and solve problems.
- Huffman Coding - A lossless compression algorithm that assigns shorter binary codes to more frequent symbols, achieving optimal prefix-free encoding for known symbol probabilities.
- Pushdown Automaton - A type of automaton that augments a finite state machine with a stack, enabling it to recognize context-free languages.
- Petri Net - A mathematical modeling language for distributed systems that uses places, transitions, and tokens to represent concurrent processes and resource flow.
- Recursion - A problem-solving approach where a function calls itself to break complex problems into smaller, self-similar subproblems.
- Deterministic Finite Automaton - A finite-state machine in which each state has exactly one transition per input symbol, with no ambiguity and no epsilon moves.
- Finite-State Machine - A computational model with a finite number of states, transitions between them triggered by inputs, and at most one active state at a time.
- Universal Turing Machine - A Turing machine that can simulate any other Turing machine when given a description of that machine and its input, providing the theoretical basis for the stored-program computer.
- Hash Function - A function that maps data of arbitrary size to fixed-size values, used for fast data retrieval, integrity verification, and cryptography.
- Polymorphism - The ability for different types to be used through a common interface, with the actual behavior resolved according to each value's real type.
- Computability - The study of which problems can in principle be solved by an algorithm or effective procedure, and which cannot, regardless of available time or memory.
- Computational Thinking - A problem-solving approach that uses computer science principles like decomposition, pattern recognition, abstraction, and algorithmic design to tackle complex challenges.
- State Pattern - A behavioral design pattern that lets an object alter its behavior when its internal state changes by delegating to state-specific objects instead of large conditionals.
- Pattern Matching - The cognitive and computational ability to recognize regularities, structures, and recurring forms in data, experiences, or information.
- Lambda Calculus - A formal system introduced by Alonzo Church for expressing computation through function abstraction and application, equivalent in power to Turing machines and foundational to functional programming.
- Halting Problem - The proven impossibility of creating a general algorithm that can determine whether any given program will eventually halt or run forever.
- Computability Theory - The branch of mathematical logic and computer science studying which problems can be solved algorithmically and which are fundamentally unsolvable.
- Cellular Automaton - A discrete computational model consisting of a grid of cells, each in one of a finite number of states, evolving in time according to fixed local rules.
- Distributed Systems - Computing systems composed of multiple independent components located on different networked computers that coordinate to achieve a common goal.
- Artificial Neural Network - A computing system inspired by biological neural networks that learns to perform tasks by processing examples through layers of interconnected nodes.
- Hierarchical State Machine - A state machine extension where states can contain nested substates, enabling shared transitions, behavior inheritance, and compact representation of complex behavior.
- Formal Methods - Mathematically rigorous techniques for specifying, developing, and verifying software and hardware systems to ensure correctness with respect to a precise specification.
- Church-Turing Thesis - The hypothesis that any function computable by an effective procedure can be computed by a Turing machine, defining the fundamental limits of computation.
- Big O Notation - A notation that describes the asymptotic upper bound on how an algorithm's running time or memory use grows as the size of its input increases.
- Data Structures - Specialized formats for organizing, storing, and managing data in computers to enable efficient access and modification.
- Undecidability - The property of a decision problem for which no algorithm can exist that always gives a correct answer for every possible input.
- Turing Machine - A theoretical mathematical model of computation that defines an abstract machine manipulating symbols on a tape according to rules, forming the foundation of computer science.
- Automata Theory - The study of abstract computing machines such as finite automata, pushdown automata, and Turing machines, and the classes of problems each type of machine can solve.
- Byzantine Generals Problem - A fundamental problem in distributed computing about achieving consensus among distributed components when some may be faulty or malicious, named after a metaphor involving generals coordinating an attack.
- Process Calculus - A family of formal approaches to modeling concurrent systems through algebraic operations on processes that communicate via message passing.
- Statechart - An extension of finite state machines that adds hierarchy, concurrency, and history, designed by David Harel for modeling complex reactive systems.
- State Machine - A computational model where a system can be in exactly one of a finite number of states at any given time, transitioning between states in response to inputs.
- Artificial Intelligence - The field of computer science focused on creating systems that can perform tasks requiring human-like intelligence, learning, and reasoning.
- Decidability - The question of whether a decision problem admits an algorithm that always halts and returns a correct yes-or-no answer, distinguishing decidable problems from undecidable ones.
- Bloom Filter - A space-efficient probabilistic data structure that tests whether an element is a member of a set, allowing false positives but never false negatives.
← Back to all concepts