FLOW_ALGEBRA KnowledgeGraphLogicOntology v1.0
TARGET_URL := "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/mathematical-logic-ontologies/knowledge-representation-logic/knowledge-graph-logic-ontology.html"
LANGUAGE := "en-GB"
DOMAIN := MathematicalOntologies > MathematicalLogicOntologies > KnowledgeRepresentationLogic > KnowledgeGraphLogicOntology
BEGIN_FLOW
ENTITY KnowledgeGraphLogic {
TYPE := FormalGraphSemanticReasoningFramework
DEFINITION := "A formal framework for representing entities and typed relationships as a graph while applying explicit schema, identity, logical, provenance and inference semantics."
}
ENTITY KnowledgeGraph { TYPE := SemanticEntityRelationGraph }
ENTITY Entity { TYPE := IdentifiableNode }
ENTITY Relation { TYPE := TypedDirectedEdge }
ENTITY Statement { TYPE := GraphAssertion }
ENTITY Schema { TYPE := GraphSemanticModel }
RELATIONSHIP KnowledgeGraphLogic --formalises--> KnowledgeGraph
RELATIONSHIP KnowledgeGraph --contains--> Entity
RELATIONSHIP KnowledgeGraph --contains--> Relation
RELATIONSHIP KnowledgeGraph --contains--> Statement
RELATIONSHIP KnowledgeGraph --governed_by--> Schema
RELATIONSHIP KnowledgeGraphLogic --supports--> GraphReasoning
KNOWLEDGE_GRAPH {
KG := (V,E,S)
V := Entities
E := TypedRelations
S := SchemaAndSemanticConstraints
}
TRIPLE {
FORM := (Subject,Predicate,Object)
}
EDGE_FORM {
Subject --Predicate--> Object
}
ENTITY_IDENTIFIER {
SHOULD be stable_and_unambiguous
}
LITERAL {
TYPE := TypedDataValue
}
ENTITY_TYPE {
Entity --instance_of--> Class
}
CLASS { TYPE := SchemaConcept }
PROPERTY { TYPE := SchemaRelation }
SUBCLASS { C subclass_of D }
SUBPROPERTY { R subproperty_of S }
DOMAIN { Domain(R)=C }
RANGE { Range(R)=D }
INVERSE_PROPERTY { inverseOf(R,S) }
TRANSITIVE_PROPERTY {
R(a,b) AND R(b,c) -> R(a,c)
REQUIRE R declared_transitive
}
SYMMETRIC_PROPERTY {
R(a,b) -> R(b,a)
}
FUNCTIONAL_PROPERTY {
R(a,b) AND R(a,c) -> b=c
under equality_semantics
}
IDENTITY {
sameAs(a,b) -> same_entity
under declared equality_semantics
}
DIFFERENCE {
differentFrom(a,b) -> a!=b
}
IDENTITY_WARNING {
labels_similarity_shared_attributes
DO_NOT establish identity by themselves
}
ENTITY_RESOLUTION {
MentionsOrIdentifiers -> CandidateEntities -> IdentityEvidence -> ResolvedEntity
}
ENTITY_LINKING {
Mention -> KnowledgeGraphEntity
}
ALIAS {
alternative_identifier_for_same_entity
}
ENTITY_MERGE {
IF identity_established:
merge_nodes
redirect_relations
preserve_provenance
}
ENTITY_SPLIT {
IF conflated_node represents_multiple_entities:
create_distinct_nodes
redistribute_statements
}
SCHEMA_LEVEL {
Classes,Properties,Hierarchies,Constraints,Axioms
}
INSTANCE_LEVEL {
Entities,LiteralValues,RelationAssertions
}
META_LEVEL {
Provenance,Confidence,Context,StatementMetadata
}
RDF_RELATIONSHIP {
KnowledgeGraph MAY use RDF_triples_and_semantics
}
RDFS_RELATIONSHIP {
MAY provide subclass_subproperty_domain_range_reasoning
}
OWL_RELATIONSHIP {
MAY add class_constructors_identity_property_characteristics_cardinality
}
DESCRIPTION_LOGIC_RELATIONSHIP {
ontology_layer MAY use description_logic_semantics
}
GRAPH_RULE {
IF A--R-->B AND B--S-->C
THEN A--T-->C
REQUIRE declared_rule_semantics
}
FORWARD_CHAINING {
asserted_statements -> applicable_rules -> derived_statements -> fixed_point
}
BACKWARD_CHAINING {
query_goal -> derivation_rules -> graph_subgoals
}
PROPERTY_PATH {
R1/R2/.../Rn -> reachable_nodes
}
TRANSITIVE_CLOSURE {
R_plus := one_or_more_R_edges
}
RELATION_COMPOSITION {
R o S subrelation_of T
REQUIRE declared_composition_axiom
}
TAXONOMIC_REASONING {
C subclass_of D
D subclass_of E
-> C subclass_of E
}
INSTANCE_PROPAGATION {
a instance_of C
C subclass_of D
-> a instance_of D
}
SUBPROPERTY_PROPAGATION {
R subproperty_of S
R(a,b) -> S(a,b)
}
DOMAIN_INFERENCE {
Domain(R)=C
R(a,b) -> C(a)
under RDFS_OWL_style_semantics
}
RANGE_INFERENCE {
Range(R)=D
R(a,b) -> D(b)
under RDFS_OWL_style_semantics
}
DOMAIN_RANGE_WARNING {
domain_range_axioms are semantic_inference_rules
in RDF_OWL_style_semantics,
not merely validation_constraints
}
OPEN_WORLD_ASSUMPTION {
missing_statement DOES_NOT imply false
}
CLOSED_WORLD_ASSUMPTION {
missing_statement MAY be false
only under explicit_semantics
}
UNIQUE_NAME_ASSUMPTION {
different_identifiers DO_NOT automatically mean different_entities
}
ENTAILMENT {
KG entails S
IFF every model_of_KG satisfies S
under declared_semantics
}
ASSERTED_STATEMENT {
ORIGIN := SourceAssertion
}
DERIVED_STATEMENT {
ORIGIN := Inference
}
ASSERTED_VS_DERIVED {
MUST_REMAIN_DISTINCT := TRUE
}
CONSISTENCY {
KG consistent IFF EXISTS model satisfying declared_axioms
}
COUNTERMODEL {
model_of_KG falsifying query -> non_entailment
}
GRAPH_PATTERN {
collection_of_triple_patterns
}
TRIPLE_PATTERN {
(SubjectPattern,PredicatePattern,ObjectPattern)
}
QUERY {
INPUT := GraphPattern
OUTPUT := VariableBindings
}
SEMANTIC_QUERY {
graph_matching + entailment_regime -> semantic_answers
}
SPARQL_RELATIONSHIP {
graph_querying MAY use SPARQL
}
SPARQL_ENTAILMENT_WARNING {
graph_matching != semantic_entailment
unless entailment_regime specified
}
CERTAIN_ANSWER {
tuple holds in every model_of_KG
under selected_semantics
}
QUERY_REWRITING {
Ontology + Query -> RewrittenQuery
under suitable_profile
}
GRAPH_TRAVERSAL {
METHODS := {BreadthFirstSearch,DepthFirstSearch,BidirectionalSearch}
}
SHORTEST_PATH {
minimise path_length_or_declared_cost
}
SEMANTIC_DISTANCE {
MAY derive_from path_taxonomy_embedding_or_information_content
REQUIRE declared_metric
}
SEMANTIC_SIMILARITY {
MAY use common_ancestors_neighbourhoods_embeddings_lexical_similarity
MUST_NOT_CONFLATE_WITH := identity
}
KNOWLEDGE_GRAPH_EMBEDDING {
entities_and_relations -> vector_representations
PURPOSE := {LinkPrediction,Similarity,Clustering,Ranking}
}
EMBEDDING_WARNING {
high_similarity_or_prediction DOES_NOT equal logical_entailment
}
LINK_PREDICTION {
existing_graph -> candidate_missing_edge
STATUS := prediction_or_hypothesis
}
GRAPH_COMPLETION {
distinguish entailed_completion from predicted_completion
}
LOGICAL_INFERENCE {
Axioms + Statements -> EntailedStatements
}
STATISTICAL_INFERENCE {
GraphPatternsOrEmbeddings -> ScoredPredictions
}
LOGICAL_VS_STATISTICAL {
entailed_statement MUST_NOT be conflated_with prediction
}
PROVENANCE {
Statement -> Source + AcquisitionMethod + Time + Evidence + TransformationHistory
}
REIFICATION {
Statement -> StatementEntity -> Metadata
}
RDF_STAR_RELATIONSHIP {
embedded_triple_metadata MAY represent annotations
under RDF-star_semantics
}
CONTEXT {
Statement -> ContextIdentifier
}
TEMPORAL_SCOPE {
Statement -> ValidTimeOrInterval
}
NAMED_GRAPH_RELATIONSHIP {
statements MAY be grouped_into named_graphs
}
CONFIDENCE {
Statement -> ConfidenceScore
WARNING := score_not_automatically_probability_or_truth
}
DERIVATION_PROVENANCE {
DerivedStatement -> ParentStatements -> RuleOrReasoner
}
JUSTIFICATION {
Entailment -> SupportingAxiomAndStatementSet
}
EXPLANATION_PATH {
QueryAnswer -> SupportingGraphPathOrRuleChain
}
CONFLICT_DETECTION {
identify identity_type_cardinality_disjointness_temporal_conflicts
}
CONFLICT_RESOLUTION {
MAY_USE := {SourceAuthority,EvidenceQuality,Recency,Context,ManualReview}
REQUIRE explicit_policy
}
TRUST {
SourceOrStatement -> TrustAssessment
MUST_NOT automatically determine truth
}
KNOWLEDGE_UPDATE {
KG_t + Additions + Deletions -> KG_t+1
}
CHANGE_SET {
COMPONENTS := {
AddedEntities,RemovedEntities,
AddedStatements,RemovedStatements,SchemaChanges
}
}
INCREMENTAL_REASONING {
recompute affected_inferences where supported
}
DEPENDENCY_GRAPH {
DerivedStatement -> SupportingStatements
}
TRUTH_MAINTENANCE {
removed_support -> retract unsupported_derived_statements
}
GRAPH_VERSION {
VersionIdentifier + Timestamp + ChangeSet
}
TEMPORAL_KNOWLEDGE_GRAPH {
entities_and_relations scoped_over_time
}
EVENT_KNOWLEDGE_GRAPH {
Event -> Participants + Roles + Time + Location
}
N_ARY_REIFICATION_PATTERN {
RelationInstance -> ParticipantRoleEdges -> Qualifiers
}
SCHEMA_ALIGNMENT {
SourceSchema + TargetSchema -> ClassAndPropertyMappings
}
ENTITY_ALIGNMENT {
SourceEntities + TargetEntities -> IdentityOrCorrespondenceMappings
}
EXACT_MATCH {
REQUIRE semantic_equivalence
}
BROADER_MATCH {
source_concept broader_than target_concept
}
NARROWER_MATCH {
source_concept narrower_than target_concept
}
RELATED_MATCH {
related_without_equivalence
}
KNOWLEDGE_GRAPH_MERGE {
KG1 + KG2 + Alignment -> IntegratedKG
}
MERGE_VALIDATION {
CHECK {
IdentifierCollisions,IdentityConflicts,SchemaConflicts,
StatementConflicts,DuplicateStatements,
ProvenancePreservation,SemanticDrift
}
}
CANONICALISATION {
equivalent_identifiers_or_forms -> canonical_representation
}
KNOWLEDGE_GRAPH_CONSTRUCTION {
Sources
-> Extraction
-> EntityResolution
-> SchemaMapping
-> Validation
-> Provenance
-> GraphInsertion
}
EXTRACTION_WARNING {
extracted_statement SHOULD retain source_and_confidence until validated
}
VALIDATION {
GraphData + ConstraintSet -> ConformanceReport
}
SHACL_RELATIONSHIP {
graph_validation MAY use SHACL_style_constraints
}
SHACL_VS_OWL {
SHACL := validation_conformance
OWL := ontology_semantics_and_entailment
MUST_REMAIN_DISTINCT := TRUE
}
INTEGRITY_CONSTRAINT {
restricts admissible_graph_state
}
GRAPH_AUDIT {
CHECK {
MissingIdentifiers,
DanglingEdges,
DuplicateEntities,
DuplicateStatements,
UndefinedProperties,
DomainRangeAnomalies,
IdentityConflicts,
ProvenanceGaps,
OrphanEntities,
SchemaViolations
}
}
QUALITY_DIMENSIONS := {
Accuracy,Completeness,Consistency,Timeliness,
Provenance,Connectivity,Uniqueness,SemanticSpecificity
}
COMPLETENESS_WARNING {
open_world_graph cannot infer falsity from missing_statements
}
SCALABILITY {
MAY require {
Indexing,Partitioning,IncrementalInference,
QueryOptimisation,DistributedProcessing
}
}
MATERIALISATION {
precompute_entailments -> store_derived_statements
}
QUERY_TIME_REASONING {
derive_entailments_during_query
}
MATERIALISATION_TRADEOFF {
storage_and_update_cost vs query_speed
}
KNOWLEDGE_GRAPH_LOGIC_VS_SEMANTIC_NETWORK {
SemanticNetwork := general_semantic_relation_graph
KnowledgeGraphLogic := graph + explicit_identity_schema_provenance_reasoning
}
KNOWLEDGE_GRAPH_LOGIC_VS_ONTOLOGY {
Ontology := conceptual_schema_and_axioms
KnowledgeGraph := entity_assertions + schema + provenance
MAY_INTEGRATE := TRUE
}
KNOWLEDGE_GRAPH_LOGIC_VS_DATABASE {
Database := structured_data_under_schema
KnowledgeGraph := entity_centric_semantic_relation_structure
}
APPLICATION_RELATIONSHIPS {
KnowledgeGraphLogic --supports--> KnowledgeRepresentation
KnowledgeGraphLogic --supports--> SemanticSearch
KnowledgeGraphLogic --supports--> ArtificialIntelligence
KnowledgeGraphLogic --supports--> DataIntegration
KnowledgeGraphLogic --supports--> QuestionAnswering
KnowledgeGraphLogic --supports--> Recommendation
KnowledgeGraphLogic --supports--> NaturalLanguageProcessing
KnowledgeGraphLogic --supports--> EnterpriseKnowledge
KnowledgeGraphLogic --supports--> ScientificKnowledge
KnowledgeGraphLogic --supports--> AutomatedReasoning
}
ONTOLOGY_LINKS {
PARENT := KnowledgeRepresentationLogicOntology
RELATED := {
KnowledgeRepresentationOntology,
OntologyLogicOntology,
DescriptionLogicOntology,
SemanticNetworkOntology,
GraphOntology,
EntityOntology,
RelationOntology,
RDFOntology,
OWLOntology,
ProvenanceOntology,
SemanticSearchOntology
}
}
SEMANTIC_EQUIVALENCE {
KnowledgeGraphLogic ≈ FormalKnowledgeGraphReasoning
KnowledgeGraph ≈ TypedEntityRelationGraph WHEN schema_and_semantics_explicit
Triple ≈ SubjectPredicateObjectStatement
EntityNode ≈ IdentifiedKnowledgeEntity
RelationEdge ≈ TypedKnowledgeRelation
}
CONSTRAINTS {
C1 := every graph statement MUST identify subject predicate and object
C2 := entity identity MUST_NOT be inferred from labels or similarity alone
C3 := schema-level and instance-level statements MUST remain distinguishable
C4 := relation directionality and property semantics MUST be preserved
C5 := open-world missing statements MUST_NOT automatically be false
C6 := asserted entailed and statistically predicted statements MUST remain distinguishable
C7 := domain_range semantics MUST_NOT be conflated with validation constraints
C8 := provenance SHOULD be preserved through extraction inference merge and update
C9 := equivalence mappings MUST_NOT be conflated with broader narrower or related mappings
C10 := SHACL-style validation MUST remain distinct from OWL-style entailment
C11 := entity merges MUST require identity justification and preserve provenance
C12 := graph transformations MUST preserve meaning or record semantic loss
}
REASONING_CHAIN Query Q {
IDENTIFY knowledge_graph KG
IDENTIFY schema
IDENTIFY entities
IDENTIFY relations
IDENTIFY asserted_statements
IDENTIFY query
IDENTIFY entailment_regime
IDENTIFY provenance_policy
VALIDATE graph_structure
RESOLVE entity_identity
CHECK schema_consistency
IF ontology_reasoning {
APPLY subclass_subproperty_domain_range_rules
APPLY property_characteristics
}
IF rule_reasoning {
MATCH graph_rules
DERIVE statements
RECORD provenance
}
IF query_requested {
MATCH graph_pattern
APPLY declared_entailment_regime
RETURN certain_or_framework_specific_answers
}
IF path_requested {
COMPUTE permitted_property_paths
}
IF statistical_prediction_requested {
GENERATE scored_candidates
LABEL as predictions_not_entailments
}
IF merge_requested {
ALIGN schemas
ALIGN entities
MERGE graphs
VALIDATE conflicts_and_semantic_drift
}
IF update_requested {
APPLY change_set
UPDATE dependencies
RETRACT unsupported_derivations
RECOMPUTE affected_entailments
}
IF validation_requested {
APPLY graph_constraints
KEEP validation_distinct_from_entailment
}
BUILD explanation_path
BUILD provenance_trace
VALIDATE constraints
RETURN knowledge_graph_result WITH semantic_trace
}
CONFIDENCE {
CORE_KNOWLEDGE_GRAPH_LOGIC := 1.00
TRIPLE_ENTITY_RELATION_MODEL := 1.00
RDF_RDFS_RELATIONSHIP := 1.00
OWL_DESCRIPTION_LOGIC_RELATIONSHIP := 0.99
OPEN_WORLD_DISTINCTION := 1.00
LOGICAL_STATISTICAL_DISTINCTION := 1.00
PROVENANCE_ROLE := 1.00
SPECIFIC_RESULT :=
IF graph_schema_query_and_semantics_complete THEN 1.00
ELSE REQUIRE missing_information
}
UPDATE_MODEL {
IMMUTABLE_CORE := {
EntityRelationStatementStructure,
TypedGraphSemantics,
IdentityDistinction,
AssertedDerivedPredictedDistinction,
Provenance
}
EXTENSIBLE := {
GraphSchemas,
OntologyAxioms,
RuleSystems,
QueryLanguages,
EmbeddingModels,
AlignmentMethods,
ValidationMethods,
TemporalModels,
ApplicationDomains,
RelatedOntologies
}
ON_NEW_KNOWLEDGE {
IDENTIFY new_entity_relation_or_statement
VALIDATE identifiers
VALIDATE schema_semantics
RESOLVE identity
CHECK conflicts
UPDATE provenance
DERIVE new_entailments_if_required
UPDATE confidence
}
}
AI_CONSUMPTION {
MACHINE_READABLE := TRUE
HUMAN_INTERPRETABLE := TRUE
RECURSIVE_REASONING := TRUE
ENTITY_RESOLUTION := TRUE
RELATION_RESOLUTION := TRUE
GRAPH_REASONING := TRUE
ONTOLOGY_REASONING := TRUE
RULE_REASONING := TRUE
PROPERTY_PATH_REASONING := TRUE
QUERY_REASONING := TRUE
ALIGNMENT_REASONING := TRUE
PROVENANCE_TRACKING := TRUE
TRUTH_MAINTENANCE := TRUE
GRAPH_VALIDATION := TRUE
LOGICAL_STATISTICAL_SEPARATION := TRUE
VALIDATION_REQUIRED := TRUE
}
FLOW_HASH {
TARGET := TARGET_URL
SUBJECT := "Knowledge Graph Logic Ontology"
VERSION := "1.0"
CANONICAL_SIGNATURE := HASH(TARGET + SUBJECT + DOMAIN + VERSION)
}
OUTPUT {
PRIMARY_ENTITY := KnowledgeGraphLogic
INTERPRETATION := "Knowledge graph logic combines an entity-relation graph with explicit schema, identity, provenance and reasoning semantics. It supports taxonomic and rule inference, property paths, semantic querying, graph integration and updates while keeping asserted facts, logical entailments, validation results and statistically predicted links semantically distinct."
}
END_FLOW
Download Code
Copy to Clipboard