Hi Johannes,
as you already know the default way to represent relationships is via
using predicates
Evaluation
Predicate "my-relationship"
List
<arg-1>
...
<arg-n>
though recently Linas has enabled the following as well
Evaluation
Predicate "my-relationship"
<arg-1>
...
<arg-n>
I don't know if there is a preferred way. I suppose if the same
argument tuples are involved with multiple predicates you may prefer
to wrap them in List so same space.
Equivalently concepts can be used where ConceptNode is to
PredicateNode and MemberLink is to EvaluationLink, it's up to you,
though I noticed people tend to use predicates for relationships and
concepts for members.
Other than that there are indeed specialized atom types that can be
used. Perhaps I would recommend that you use predicates for everything
and link them to specialized atom types during post
processing/reasoning.
To discover the many specialized atom types you may found a partial
list here
https://wiki.opencog.org/w/Category:Atom_Types
In particular, causality and spatio-temporal relationships should
ultimately be representable by specialized atom types. I know progress
is being made on that front which I haven't followed. See for instance
https://github.com/opencog/opencog/blob/master/opencog/spacetime/atom-types/atom_types.script
Nil
On 2/1/19 10:54 AM, Johannes Castner wrote:
Hi Nil,
I've been working quite hard on some code that will allow to easily take
any knowledge base, written either in obo or owl format and to load it
into the AtomSpace. The subtle questions begin with how to encode
certain assertions into the AtomSpace so that the meaning is best
encoded into the Atomese logic. For the Environmental Ontology,
combined with the Sustainable Development Goals Interface Ontology we
have the following relationships and I wonder if you might have some
guidance for us as to how to encode them best in Scheme Atomese. Note
that for each of those, we also have some properties (such as
is_symmetric, is_transitive...):
has_increased_levels_of
causally_influences
positively_regulated_by
coincident_with
input_of
location_of
has_part_that_occurs_in
causally_related_to
involved_in_positive_regulation_of
involved_in_regulation_of
acts_upstream_of
spatially_disjoint_from
provides_nutrients_for
realized_in_response_to
during_which_ends
has_quality
has_output
produces
capable_of
interacts_with
has_end_location
contains_process
attached_to_part_of
involved_in
develops_into
enables
has_member
during_which_starts
regulated_by
has_participant
ends_after
has_developmental_contribution_from
bounding_layer_of
causally_upstream_of,_positive_effect
preceded_by
starts
has_part
quality_of
inheres_in_part_of
immediately_causally_upstream_of
participates_in_a_biotic-biotic_interaction_with
contributes_to
in_branching_relationship_with
causal_agent_in
disconnected_from
RO:0002495
located_in
has_disposition
depends_on
has_function
determines
trophically_interacts_with
ends_during
happens_during
part_of
participates_in
occurs_in
causally_downstream_of_or_within
part_of_structure_that_is_capable_of
RO:0002225
drains
directly_regulates
surrounded_by
formed_as_result_of
tributary_of
has_condition
has_active_participant
contained_in
results_in_expansion_of
has_potential_to_directly_develop_into
biomechanically_related_to
causally_upstream_of_or_within
connected_to
determined_by_part_of
results_in_transformation_into
partially_surrounded_by
biotically_interacts_with
disposition_of
developmentally_preceded_by
has_habitat
capable_of_negatively_regulating
developmentally_related_to
actively_participates_in
PATO:0005016
involved_in_negative_regulation_of
enables_activity_in
molecularly_controls
ends_with
precedes
results_in_formation_of
continuous_with
mereotopologically_related_to
determined_by
starts_with
surrounds
positively_regulates
developmentally_contributes_to
related_via_dependence_to
causally_influenced_by
adjacent_to
spatially_coextensive_with
temporally_related_to
role_of
partially_overlaps
realized_in
regulates_(processual)
acts_upstream_of_or_within
has_causal_agent
has_developmental_potential_involving
capable_of_positively_regulating
causal_relation_between_material_entities
realizes
derives_into
encompasses
member_of
RO:0009001
FOODON:00001303
has_part_structure_that_is_capable_of
ecologically_related_to
enabled_by
ends
causally_upstream_of,_negative_effect
overlaps
produced_by
developmentally_succeeded_by
has_input
immediately_causally_downstream_of
has_potential_to_develop_into
contains
connects
starts_during
results_in_proliferation_of
involved_in_or_involved_in_regulation_of
causal_relation_between_processes
bearer_of
immediately_preceded_by
derives_from
capable_of_regulating
has_start_location
has_role
immediately_precedes
FOODON:00002420
composed_primarily_of
distributary_of
capable_of_part_of
causally_upstream_of
functionally_related_to
causal_relation_between_material_entity_and_a_process
negatively_regulates
towards
molecularly_interacts_with
negatively_regulated_by
output_of
inheres_in
causally_downstream_of
results_in_developmental_progression_of
function_of
acquires_nutrients_from
attached_to
has_potential_to_developmentally_contribute_to
develops_from
On Monday, January 21, 2019 at 8:50:10 AM UTC, Nil wrote:
On 1/18/19 3:12 PM, Johannes Castner wrote:
> Do you know of a simpler way than to hand-code those Axioms
> individually? I mean, do you know if they might not already be
encoded
> somewhere? If I have to, I'll encode all of them by hand--quite
a project!
Unfortunately I doubt such axioms are encoded anywhere.
I have intended to supplement PLN rules with higher order facts (HOF)
to, among other things, define an ontology of relationships such as
ImplicationScope (stv 1 1)
P
And
Member
P
Concept "binary"
Member
P
Concept "transitive"
ImplicationScope
VariableList X Y Z
And
Evaluation
P
List X Y
Evaluation
P
List Y Z
Evaluation
P
List X Z
so that one may directly write
Member (stv 1 1)
Predicate "be-friends"
Concept "transitive"
Then PLN would need an extra step to reason about the transitiveness of
be-friends but it would make it much more compact to encode.
These facts are planned to be placed under
https://github.com/opencog/opencog/tree/master/opencog/pln/facts
<https://github.com/opencog/opencog/tree/master/opencog/pln/facts>
but, as you can see, only one is present ATM.
Nil
--
You received this message because you are subscribed to the Google
Groups "opencog" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/7b70d209-d4b4-438d-a424-816abc8f170d%40googlegroups.com
<https://groups.google.com/d/msgid/opencog/7b70d209-d4b4-438d-a424-816abc8f170d%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/22671339-4a09-a129-a243-546524d46f54%40gmail.com.
For more options, visit https://groups.google.com/d/optout.