Concepts - arc-community/arc GitHub Wiki
List of concepts
-
Objectness
- Concept: Objects - Objects exist as entities parseable by e.g. color continuity or spatial congigutity
- Concept: Object cohesion - Objects move as continuous, connected, bounded wholes
- Concept: Object persistence - Objects persist, even in the presence of noise or occlusions by other objects, or from input to output
- Concept: Object transformation - Objects can be transformed from input to output, e.g. in shape or color
- Concept: Object contact - Objects can get into contact and interact upon contact (e.g. changing direction or stopping)
- Concept: Object class - Objects can belong to a class that shares properties
-
Goal-directedness
- Concept: Agents - Objects can be agents that try to achieve some goal (i.e. go somewhere in the shortest path)
- Concept: Agent efficiency - Agents pursue their goals with efficiency
- Concept: Agent contingency - Not sure what it means, maybe agents act conditional on external events?
- Concept: Agent reciprocity - Agents reciprocate / copy actions of other agents
-
Numbers and counting
- Concept: Numbers - Small numbers in ARC, up to 10
- Concept: Counting - Counting things of any modality
- Concept: Sorting - Ordering things by count or other properties
- Concept: Comparing numbers - Larger, smaller, or equality relations
- Concept: Math - Addition and subtraction
-
Misc
- Concept: Partitions - Parsing the grid into zones / regions
- Concept: Time - A situation evolves in time from input to output
- Concept: Repetition - Something being repeated a number or infinitely many times
- Concept: Copy - Copying something somewhere
- Concept: Gravity - Pulling things into a direction, maybe related to projection below
- Concept: Keying - One object is the key for an operation, for example the corner pixel indicates how to color the rest
-
Basic geometry and topology
- Concept: Lines
- Concept: Rectangular shapes
- Concept: Shape scaling - Up- or downscaling
- Concept: Shape distortions - Elastic distortions, elongations, contractions, etc.
- Concept: Containment - Shapes containing each other, or being inside or outside a perimiter
- Concept: Connecting points - Drawing lines and connecting points
- Concept: Projection - e.g. orthogonal projection
Core Knowledge
Core Knowledge identifies four broad categories of innate assumptions that form the foundations of human cognition, and which are largely shared by our non-human relatives:
- Objectness and elementary physics: humans assume that their environment should be parsed into “objects” characterized by principles of cohesion (objects move as continuous, connected, bounded wholes), persistence (objects do not suddenly cease to exist and do not suddenly materialize), and contact (objects do not act at a distance and cannot interpenetrate).
- Agentness and goal-directedness: humans assume that, while some objects in their environment are inanimate, some other objects are “agents”, possessing intentions of their own, acting so as to achieve goals (e.g. if we witness an object A following another moving object B, we may infer that A is pursuing B and that B is fleeing A), and showing efficiency in their goal-directed actions. We expect that these agents may act contingently and reciprocally.
- Natural numbers and elementary arithmetic: humans possess innate, abstract number representations for small numbers, which can be applied to entities observed through any sensory modality. These number representations may be added or subtracted, and may be compared to each other, or sorted.
- Elementary geometry and topology: this core knowledge system captures notions of distance, orientation, in/out relationships for objects in our environment and for ourselves. It underlies humans’ innate facility for orienting themselves with respect to their surroundings and navigating 2D and 3D environments.
ARC Challenge Priors
- Objectness priors: Object cohesion: Ability to parse grids into “objects” based on continuity criteria including color continuity or spatial contiguity (figure 5), ability to parse grids into zones, partitions. Object persistence: Objects are assumed to persist despite the presence of noise (figure 6) or occlusion by other objects. In many cases (but not all) objects from the input persist on the output grid, often in a transformed form. Common geometric transformations of objects are covered in category 4, “basic geometry and topology priors”. Object influence via contact: Many tasks feature physical contact between objects (e.g. one object being translated until it is in contact with another (figure 7), or a line “growing” until it “rebounds” against another object (figure 8).
- Goal-directedness prior: While ARC does not feature the concept of time, many of the input/output grids can be effectively modeled by humans as being the starting and end states of a process that involves intentionality (e.g. figure 9). As such, the goal-directedness prior may not be strictly necessary to solve ARC, but it is likely to be useful.
- Numbers and Counting priors: Many ARC tasks involve counting or sorting objects (e.g. sorting by size), comparing numbers (e.g. which shape or symbol appears the most (e.g. figure 10)? The least? The same number of times? Which is the largest object? The smallest? Which objects are the same size?), or repeating a pattern for a fixed number of time. The notions of addition and subtraction are also featured (as they are part of the Core Knowledge number system as per [85]). All quantities featured in ARC are smaller than approximately 10.
- Basic Geometry and Topology priors:
ARC tasks feature a range of elementary geometry and topology concepts, in particular:
- Lines, rectangular shapes (regular shapes are more likely to appear than complex shapes).
- Symmetries (e.g. figure 11), rotations, translations.
- Shape upscaling or downscaling, elastic distortions.
- Containing / being contained / being inside or outside of a perimeter.
- Drawing lines, connecting points, orthogonal projections.
- Copying, repeating objects
here
adapted from- Reflexes
- All of the basic assembly functions; registers, memories; stack; tables as per
WASM
specification- if we are to use the
icecuber
unifying "image" type, then the mem access instructions are like the "multiple memories" concept ofWASM
-- see multi-memory
- if we are to use the
- All of the basic assembly functions; registers, memories; stack; tables as per
- Assumption that information in the universe follows a modular and/or hierarchical structure
- trees of structs, abstract objects with a body, or objects with a "hidden body"
- Assumptions regarding causality
- note that in human reasoning, reverse-time reasoning is often used to a good effect
- some classes of objects obey the arrow of time, some are timeless
- Spatio-temporal continuity
- Persistence of objects - objects do not suddenly cease to exist and do not suddenly materialize
- Contact: objects do not act at a distance, and cannot interpenetrate. Note, however, that in a 2D projection of a latent 3D world it might appear as if objects do interpenetrate even if they do not in the latent higher-dimensional world.
- Counting of objects
- Separating objects from the background
- Objects move as continuous, connected, bounded wholes
- Object has a boundary between itself and the background, or another object
- Background is an object
- Objects can be similar or distinct; they can belong to a class
- Objects of a certain class possess certain properties and methods derived from that class
- Orientation (up, down, left right) and navigation (find path) in 2D in 3D
- Goal-directedness -- expectation that the environment includes agents (objects) that behave according to inner goals
- Natural numbers
- Theory of mind -- other agents may act similar to oneself
- Agent = object that has an internal OODA loop (observe, orient, decide, act)
- Non-agent = object that is only acted upon by the environment or other agents - can still hold state but has internal OODA loop (or an inactive one)
- Environment is an agent that is always present
- Agents may act contingently and reciprocally.
- contingently = they prepare for something that may or may not happen
- reciprocally = ??
- Natural numbers, and operations -- addition/subtraction, comparison, sorting, maybe multiplication. Even, odd, prime
- Elementary geometry and topology
- notion of distance
- notion of orientation - "where is the top" of an object, and which direction does it point
- relation of in/out, close, far, partial-overlap, boundary
- notion of larger, smaller,
- Object can produce or consume other objects
- symmetry, rotation, translation