Authoring DSL API
Status: Generated from current Python docstrings and type hints.
Public authoring helpers for knowledge packages. Start here when checking the Python surface that package authors import.
gaia.engine.lang.dsl
Public Gaia Lang DSL helper functions.
artifact
artifact(*, kind: str, source: str | None = None, locator: str | None = None, path: str | None = None, caption: str | None = None, description: str | None = None, media_type: str | None = None, content: str | None = None, title: str | None = None) -> Note
Create a note carrying structured artifact metadata.
Source code in gaia/engine/lang/dsl/artifacts.py
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | |
figure
figure(*, source: str | None = None, locator: str | None = None, path: str | None = None, caption: str | None = None, description: str | None = None, media_type: str | None = None, content: str | None = None, title: str | None = None) -> Note
Create a figure artifact note.
Source code in gaia/engine/lang/dsl/artifacts.py
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | |
associate
associate(a: Any, b: Any, *, p_a_given_b: float, p_b_given_a: float, pattern: str | None = None, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim
Declare a symmetric probabilistic association. Returns an association helper Claim.
a and b may be any Boolean-valued expression (Claim,
ClaimAtom, Formula node, or BoolExpr); non-Claim inputs are
lifted to helper Claims at the verb boundary per RFC #703.
Source code in gaia/engine/lang/dsl/associate_verb.py
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | |
equals
equals(left: Any, right: Any) -> Equals
Create an equality formula.
Source code in gaia/engine/lang/dsl/formula.py
53 54 55 | |
exists
exists(variable: Variable, body: Any) -> Exists
Create an existential quantifier over a free variable.
Source code in gaia/engine/lang/dsl/formula.py
23 24 25 | |
forall
forall(variable: Variable, body: Any) -> Forall
Create a universal quantifier over a free variable.
Source code in gaia/engine/lang/dsl/formula.py
18 19 20 | |
iff
iff(left: Any, right: Any) -> Iff
Create an equivalence formula.
Source code in gaia/engine/lang/dsl/formula.py
48 49 50 | |
implies
implies(antecedent: Any, consequent: Any) -> Implies
Create an implication formula.
Source code in gaia/engine/lang/dsl/formula.py
43 44 45 | |
land
land(*operands: Any) -> Land
Create a logical conjunction formula.
Source code in gaia/engine/lang/dsl/formula.py
28 29 30 | |
lnot
lnot(operand: Any) -> Lnot
Create a logical negation formula.
Source code in gaia/engine/lang/dsl/formula.py
38 39 40 | |
lor
lor(*operands: Any) -> Lor
Create a logical disjunction formula.
Source code in gaia/engine/lang/dsl/formula.py
33 34 35 | |
infer
infer(evidence: Claim | str | None = None, *args: Any, hypothesis: Claim | None = None, given: Claim | tuple[Claim, ...] | list[Claim] | None = (), background: list[Knowledge] | None = None, p_e_given_h: float | Claim | None = None, p_e_given_not_h: float | Claim | None = _DEFAULT_P_E_GIVEN_NOT_H_ARG, rationale: str = '', label: str | None = None, **legacy_kwargs: Any) -> Claim | Strategy
Bayesian inference. Returns the evidence Claim.
The canonical v6 shape is infer(evidence, hypothesis=..., ...). The old
v5 infer([premises], conclusion, ...) form is preserved as a deprecated
compatibility path.
Source code in gaia/engine/lang/dsl/infer_verb.py
113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 | |
claim
claim(content: str, proposition: BoolExpr | None = None, *, title: str | None = None, format: str = 'markdown', background: list[Knowledge] | None = None, parameters: list[dict[str, Any]] | None = None, provenance: list[dict[str, str]] | None = None, prior: float | None = None, formula: Any = None, kind: ClaimKind = ClaimKind.GENERAL, tolerance: float | None = None, **metadata: Any) -> Claim
Declare a scientific assertion.
Three authoring shapes:
- Prose claim —
claim("Heliocentric model is correct.", prior=0.8). The proposition is conveyed in natural language. The optionalpriorkeyword is a low-priority shortcut routed throughregister_prior()withsource_id="claim_inline". - Predicate claim —
claim("Reaction is fast", k > 1e-2). The second positional argument is a :class:BoolExprproduced by comparing a :class:Distributionagainst a constant. The compiler registers a CDF-derived prior record for inequality predicates. See :class:gaia.engine.lang.Distributionfor how to declare the underlying continuous quantity. - Formula claim —
claim(content, formula=Forall(...))for the predicate-logic surface (unchanged from v0.5).
The tolerance keyword applies only when proposition is an equation
(lhs == rhs). PR1 stores equation metadata and a neutral default prior;
equation constraint lowering is deferred.
Source code in gaia/engine/lang/dsl/knowledge.py
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 | |
context
context(content: str, *, title: str | None = None, format: str = 'markdown', **metadata: Any) -> Note
Deprecated compatibility wrapper for note().
Source code in gaia/engine/lang/dsl/knowledge.py
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | |
export
export(*items: str | Knowledge) -> list[str]
Return root __all__ names for a package's public Knowledge surface.
The helper is intentionally small: it returns a plain list[str] and
stores no hidden export state. Passing strings is equivalent to writing the
names directly. Passing a Knowledge object resolves the object's public
name from the caller's module or local scope, which keeps __all__ close
to normal Python public-API conventions while avoiding string typos.
Source code in gaia/engine/lang/dsl/knowledge.py
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |
note
note(content: str, *, title: str | None = None, format: str = 'markdown', **metadata: Any) -> Note
Declare non-probabilistic contextual material.
Source code in gaia/engine/lang/dsl/knowledge.py
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | |
question
question(content: str, *, title: str | None = None, format: str = 'markdown', **metadata: Any) -> Question
Declare a research question. No probability, no BP participation.
Source code in gaia/engine/lang/dsl/knowledge.py
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | |
setting
setting(content: str, *, title: str | None = None, format: str = 'markdown', **metadata: Any) -> Note
Deprecated compatibility wrapper for note().
Source code in gaia/engine/lang/dsl/knowledge.py
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | |
complement
complement(a: Knowledge, b: Knowledge, *, reason: str = '', prior: float | None = None) -> Knowledge
A != B (XOR). Creates Operator, returns helper claim.
Source code in gaia/engine/lang/dsl/operators.py
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | |
contradiction
contradiction(a: Knowledge, b: Knowledge, *, reason: str = '', prior: float | None = None) -> Knowledge
not(A and B). Creates Operator, returns helper claim.
Source code in gaia/engine/lang/dsl/operators.py
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | |
disjunction
disjunction(*claims: Knowledge, reason: str = '', prior: float | None = None) -> Knowledge
At least one true. Creates Operator, returns helper claim.
Source code in gaia/engine/lang/dsl/operators.py
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 | |
equivalence
equivalence(a: Knowledge, b: Knowledge, *, reason: str = '', prior: float | None = None) -> Knowledge
A = B. Creates Operator, returns helper claim.
Source code in gaia/engine/lang/dsl/operators.py
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | |
and_
and_(*claims: Claim) -> Claim
Construct a Boolean conjunction expression over two or more Claims.
Source code in gaia/engine/lang/dsl/propositional.py
47 48 49 50 51 52 53 54 55 56 | |
not_
not_(claim: Claim) -> Claim
Construct the Boolean negation expression not claim.
Source code in gaia/engine/lang/dsl/propositional.py
38 39 40 41 42 43 44 | |
or_
or_(*claims: Claim) -> Claim
Construct a Boolean disjunction expression over two or more Claims.
Source code in gaia/engine/lang/dsl/propositional.py
59 60 61 62 63 64 65 66 67 68 | |
contradict
contradict(a: Any, b: Any, *, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim
Declare two Claims contradictory. Returns a contradiction helper Claim.
a and b may be any Boolean-valued expression (Claim,
ClaimAtom, Formula node, or BoolExpr); non-Claim inputs are
lifted to helper Claims at the verb boundary per RFC #703.
Source code in gaia/engine/lang/dsl/relate.py
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 | |
equal
equal(a: Any, b: Any, *, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim
Declare two Claims equivalent. Returns an equivalence helper Claim.
a and b may be any Boolean-valued expression (Claim,
ClaimAtom, Formula node, or BoolExpr); non-Claim inputs are
lifted to helper Claims at the verb boundary per RFC #703.
Source code in gaia/engine/lang/dsl/relate.py
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | |
exclusive
exclusive(a: Any, b: Any, *, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim
Declare two Claims as a closed binary partition. Returns an XOR helper Claim.
a and b may be any Boolean-valued expression (Claim,
ClaimAtom, Formula node, or BoolExpr); non-Claim inputs are
lifted to helper Claims at the verb boundary per RFC #703.
Source code in gaia/engine/lang/dsl/relate.py
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | |
candidate_relation
candidate_relation(*, claims: list[Any] | tuple[Any, ...], pattern: str | None = None, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None, metadata: dict[str, Any] | None = None) -> CandidateRelation
Record a hypothesized relation without triggering formal semantics.
Every entry of claims may be any Boolean-valued expression
(Claim, ClaimAtom, Formula node, or BoolExpr);
non-Claim inputs are lifted to helper Claims at the verb boundary
per RFC #703.
Source code in gaia/engine/lang/dsl/scaffold.py
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 | |
depends_on
depends_on(conclusion: Any, *, given: Any, background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None, metadata: dict[str, Any] | None = None) -> DependsOn
Record unformalized load-bearing dependencies for a Claim.
conclusion and every entry of given may be any Boolean-valued
expression (Claim, ClaimAtom, Formula node, or BoolExpr);
non-Claim inputs are lifted to helper Claims at the verb boundary
per RFC #703.
Source code in gaia/engine/lang/dsl/scaffold.py
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | |
materialize
materialize(scaffold: Scaffold, *, by: GaiaGraph | Claim | str | list[GaiaGraph | Claim | str] | tuple[GaiaGraph | Claim | str, ...], rationale: str = '', label: str | None = None, metadata: dict[str, Any] | None = None) -> MaterializationLink
Record a checked link from scaffold to formal graph records.
Source code in gaia/engine/lang/dsl/scaffold.py
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | |
abduction
abduction(support_h: Strategy, support_alt: Strategy, comparison: Strategy, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Ternary hypothesis comparison (IBE).
Takes two support strategies and a compare strategy. The compare strategy provides the conclusion (comparison_claim).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
support_h
|
Strategy
|
Support for the primary theory. |
required |
support_alt
|
Strategy
|
Support for the alternative theory. |
required |
comparison
|
Strategy
|
compare(pred_h, pred_alt, obs) strategy. |
required |
background
|
list[Knowledge] | None
|
Optional background knowledge. |
None
|
reason
|
ReasonInput
|
Warrant text for the composition validity. |
''
|
Returns:
| Type | Description |
|---|---|
Strategy
|
CompositeStrategy whose conclusion is |
Source code in gaia/engine/lang/dsl/strategies.py
385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 | |
analogy
analogy(source: Knowledge, target: Knowledge, bridge: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Analogy lowered via the canonical IR formalizer at compile time.
Source code in gaia/engine/lang/dsl/strategies.py
430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 | |
case_analysis
case_analysis(exhaustiveness: Knowledge, cases: list[tuple[Knowledge, Knowledge]], conclusion: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Case analysis lowered via the canonical IR formalizer at compile time.
Source code in gaia/engine/lang/dsl/strategies.py
484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 | |
compare
compare(pred_h: Knowledge, pred_alt: Knowledge, observation: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '', prior: float | None = None) -> Strategy
Compare two predictions against observation via matching + inferential ordering.
Compiles to
equivalence(pred_h, obs) -> H_match1 (does pred_h match obs?) equivalence(pred_alt, obs) -> H_match2 (does pred_alt match obs?) implication(H_match2, H_match1) -> comparison_claim (if alt matches, does h also match?)
3 warrants. First arg is claimed-better. Also usable as standalone A/B test. The auto-generated comparison_claim becomes the strategy's conclusion. prior -> confidence for the comparison implication warrant.
Source code in gaia/engine/lang/dsl/strategies.py
200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 | |
composite
composite(premises: list[Knowledge], conclusion: Knowledge, *, sub_strategies: list[Strategy], background: list[Knowledge] | None = None, reason: ReasonInput = '', type: str = 'infer') -> Strategy
Hierarchical composition lowered to IR CompositeStrategy.
Source code in gaia/engine/lang/dsl/strategies.py
520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 | |
deduction
deduction(premises: list[Knowledge], conclusion: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '', prior: float | None = None) -> Strategy
Deduction lowered via the canonical IR formalizer at compile time.
prior is accepted for legacy source compatibility. Current BP lowering
treats deduction as hard Jaynes conditional implication; review gates
publication quality, not the local inference preview or proof probability.
Source code in gaia/engine/lang/dsl/strategies.py
308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 | |
elimination
elimination(exhaustiveness: Knowledge, excluded: list[tuple[Knowledge, Knowledge]], survivor: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Elimination lowered via the canonical IR formalizer at compile time.
Source code in gaia/engine/lang/dsl/strategies.py
466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 | |
extrapolation
extrapolation(source: Knowledge, target: Knowledge, continuity: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Extrapolation lowered via the canonical IR formalizer at compile time.
Source code in gaia/engine/lang/dsl/strategies.py
448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 | |
fills
fills(source: Knowledge, target: Knowledge, *, mode: Literal['deduction', 'infer'] | None = None, strength: Literal['exact', 'partial', 'conditional'] = 'exact', background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Declare that a source claim fills a target premise interface.
Source code in gaia/engine/lang/dsl/strategies.py
256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 | |
induction
induction(support_1: Strategy, support_2: Strategy, law: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Binary CompositeStrategy: two supports jointly confirm a law.
Chains via induction(prev_induction, new_support, law).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
support_1
|
Strategy
|
First support (FormalStrategy or previous induction). |
required |
support_2
|
Strategy
|
Second support (FormalStrategy). |
required |
law
|
Knowledge
|
The Knowledge being supported. |
required |
background
|
list[Knowledge] | None
|
Optional background knowledge. |
None
|
reason
|
ReasonInput
|
Warrant text for the composition validity. |
''
|
Returns:
| Type | Description |
|---|---|
Strategy
|
CompositeStrategy whose conclusion is law. |
Source code in gaia/engine/lang/dsl/strategies.py
594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 | |
mathematical_induction
mathematical_induction(base: Knowledge, step: Knowledge, conclusion: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Mathematical induction lowered via the canonical IR formalizer at compile time.
Source code in gaia/engine/lang/dsl/strategies.py
502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 | |
noisy_and
noisy_and(premises: list[Knowledge], conclusion: Knowledge, *, background: list[Knowledge] | None = None, reason: ReasonInput = '') -> Strategy
Deprecated compatibility wrapper for old noisy-and packages.
Source code in gaia/engine/lang/dsl/strategies.py
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | |
parameter
parameter(variable: Variable, value: Any, *, content: str | None = None, describe: str | None = None, title: str | None = None, format: str = 'markdown', background: list[Knowledge] | None = None, provenance: list[dict[str, str]] | None = None, prior: float | None = None, label: str | None = None, metadata: dict[str, Any] | None = None) -> Claim
Declare that a primitive Variable takes a concrete value.
Source code in gaia/engine/lang/dsl/sugar.py
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | |
compute
compute(conclusion_type: type[Claim] | Callable[..., Any], *, fn: Callable[..., Any] | None = None, given: Claim | tuple[Claim, ...] | list[Claim] | None = (), background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim | Callable[..., Claim]
Deterministic computation.
Used either as compute(ResultClaim, fn=..., given=...) or as @compute.
Source code in gaia/engine/lang/dsl/support.py
769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 | |
derive
derive(conclusion: Any, *, given: Any = (), background: list[Knowledge] | None = None, rationale: str = '', label: str | None = None) -> Claim
Logical derivation. Returns the conclusion Claim.
conclusion may be a Claim, a str (which creates a fresh
Claim from the content), or any Boolean-valued expression
(ClaimAtom / Formula / BoolExpr) that lifts to a helper Claim
at the verb boundary per RFC #703.
Every entry of given is similarly lifted: a Boolean-valued
expression becomes a helper Claim; non-Claim non-Boolean-valued values
raise an educational :class:TypeError.
Source code in gaia/engine/lang/dsl/support.py
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | |
observe
observe(conclusion: Any, *, value: Any = _OBSERVE_VALUE_SENTINEL, error: Any = None, given: Claim | tuple[Claim, ...] | list[Claim] | None = (), background: list[Knowledge] | None = None, source_refs: list[str] | None = None, rationale: str = '', label: str | None = None) -> Claim
Empirical observation.
Three authoring shapes:
- Discrete claim observation —
observe(my_claim). A Boolean-valued expression such asa & bis lifted to an explicit helper Claim first. A no-premise observation pins the conclusion to1 - CROMWELL_EPS. Usegiven=to record a conditional observation that does not pin the conclusion. - Continuous quantity observation —
observe(distribution, value=v, error=σ). Records a measurement event for a :class:Distribution-typed quantity. Returns a freshly minted :class:Claimrepresenting the observation event (pinned to1 - CROMWELL_EPSsince the measurement was made), with metadata linking back to the underlying distribution. The compiler reads this linkage for audit and future posterior-CDF lowering. The current predicate-prior lowering still uses the Distribution's prior CDF and emits a warning when an observation targets the same Distribution.
value is the measured numeric value; error is either None
for a noise-free observation, a scalar interpreted as the Gaussian
additive standard deviation, or a :class:Distribution for a
custom noise model.
- Variable observation (v0.6 unified-bayes path) —
observe(variable, value=v, error=σ). Records a measurement event for a primitive :class:Variable(the kind that appears as the observable of a Bayes predictive model). Writes the unifiedmetadata["observation"]schema consumed by :func:gaia.engine.bayes.compare. Scalarerroris sugared into an anonymousNormal(mu=0, sigma=error)so noise is always eitherNoneor a :class:DistributionKnowledge node.
Source code in gaia/engine/lang/dsl/support.py
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 | |
compose
compose(*, name: str, version: str, background: list[Knowledge] | None = None, warrants: list[Claim] | None = None, rationale: str = '', label: str | None = None) -> Callable[[Callable[..., Claim]], Callable[..., Claim]]
Decorate a function as a Gaia action composition template.
Source code in gaia/engine/lang/runtime/composition.py
153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 | |