@prefix : <https://odsc.medium.com/odsc-ai-east-2026-pedro-domingos-on-tensor-logic-the-language-of-ai-cd6f086eb8cf#> .
@prefix schema: <http://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix dbr: <http://dbpedia.org/resource/> .
@prefix dbo: <http://dbpedia.org/ontology/> .

# ── Ontology ─────────────────────────────────────────────────────────────────

: a owl:Ontology ;
    schema:name "Tensor Logic Thesis Ontology"@en ;
    schema:description "Lightweight ontology modeling Pedro Domingos's Tensor Logic framework as presented at ODSC AI East 2026 — a named set of ordered principles unifying symbolic logic and tensor-based deep learning."@en ;
    schema:identifier "https://odsc.medium.com/odsc-ai-east-2026-pedro-domingos-on-tensor-logic-the-language-of-ai-cd6f086eb8cf"^^xsd:anyURI .

:TensorLogicPrinciple a rdfs:Class ;
    rdfs:label "Tensor Logic Principle"@en ;
    rdfs:comment "One ordered, named building block of the Tensor Logic framework, as introduced by Pedro Domingos, that together let logic programs and tensor computation be expressed as a single mathematical construct."@en ;
    rdfs:isDefinedBy : .

:enablesCapability a rdf:Property ;
    rdfs:label "enables capability"@en ;
    rdfs:comment "The specific capability or advantage a Tensor Logic principle contributes toward unifying symbolic AI and deep learning."@en ;
    rdfs:domain :TensorLogicPrinciple ;
    rdfs:range xsd:string ;
    rdfs:isDefinedBy : .

:NeuralArchitecture a rdfs:Class ;
    rdfs:label "Neural Architecture Expressed in Tensor Logic"@en ;
    rdfs:comment "A neural network architecture that Tensor Logic can express as one or two concise tensor equations."@en ;
    rdfs:isDefinedBy : .

:expressedAs a rdf:Property ;
    rdfs:label "expressed as"@en ;
    rdfs:comment "How a neural architecture is captured in Tensor Logic notation."@en ;
    rdfs:domain :NeuralArchitecture ;
    rdfs:range xsd:string ;
    rdfs:isDefinedBy : .

:PriorLanguage a rdfs:Class ;
    rdfs:label "Prior AI Language or Tool"@en ;
    rdfs:comment "A historical medium of expression for AI (a programming language, notation, or library) that Tensor Logic is positioned as synthesizing or superseding."@en ;
    rdfs:isDefinedBy : .

:strength a rdf:Property ;
    rdfs:label "strength"@en ;
    rdfs:comment "What a prior AI language or tool did well."@en ;
    rdfs:domain :PriorLanguage ;
    rdfs:range xsd:string ;
    rdfs:isDefinedBy : .

:limitation a rdf:Property ;
    rdfs:label "limitation"@en ;
    rdfs:comment "What a prior AI language or tool struggled with, motivating Tensor Logic."@en ;
    rdfs:domain :PriorLanguage ;
    rdfs:range xsd:string ;
    rdfs:isDefinedBy : .

:isOfficialImplementation a rdf:Property ;
    rdfs:label "is official implementation"@en ;
    rdfs:comment "Whether a software implementation of Tensor Logic was released by Pedro Domingos himself (true) or is an independent third-party/community reimplementation based on his published paper (false). As of this writing, no official implementation from Domingos is known to be published."@en ;
    rdfs:domain schema:SoftwareSourceCode ;
    rdfs:range xsd:boolean ;
    rdfs:isDefinedBy : .

# ── Core analysis ────────────────────────────────────────────────────────────

:analysis a schema:AnalysisNewsArticle, schema:ScholarlyArticle ;
    schema:name "ODSC AI East 2026 — Pedro Domingos on Tensor Logic: The Language of AI"@en ;
    schema:headline "Tensor Logic: The Language of AI"@en ;
    schema:description "Recap of Pedro Domingos's ODSC AI East 2026 keynote proposing Tensor Logic, a unifying language that merges tensor algebra and logic programming so that symbolic reasoning and gradient-based deep learning become mathematically identical rather than separate paradigms."@en ;
    schema:url "https://odsc.medium.com/odsc-ai-east-2026-pedro-domingos-on-tensor-logic-the-language-of-ai-cd6f086eb8cf"^^xsd:anyURI ;
    schema:datePublished "2026-05-27"^^xsd:date ;
    schema:author :odsc ;
    schema:publisher :odsc ;
    schema:about :tensorLogicConcept ;
    schema:mentions :pedroDomingos, :universityOfWashington, :odscAiEast2026, :python, :pytorch, :numpy ;
    schema:citation :arxivPaper ;
    schema:hasPart :faqSection, :glossarySection, :principlesSection, :architecturesSection,
                    :priorLanguagesSection, :quotationsSection, :implementationsSection ;
    prov:wasGeneratedBy :kgGeneratorSkill .

:faqSection schema:isPartOf :analysis .
:glossarySection schema:isPartOf :analysis .
:principlesSection schema:isPartOf :analysis .
:architecturesSection schema:isPartOf :analysis .
:priorLanguagesSection schema:isPartOf :analysis .
:quotationsSection schema:isPartOf :analysis .
:implementationsSection schema:isPartOf :analysis .

:kgGeneratorSkill a schema:SoftwareApplication, prov:SoftwareAgent ;
    schema:name "kg-generator"@en ;
    schema:description "OpenLink Software agent skill that generates RDF-Turtle knowledge graphs from source articles using curated prompt templates."@en ;
    schema:url "https://github.com/OpenLinkSoftware/ai-agent-skills"^^xsd:anyURI .

# ── People / Organizations / Event ──────────────────────────────────────────

:pedroDomingos a schema:Person ;
    owl:sameAs dbr:Pedro_Domingos ;
    schema:name "Pedro Domingos"@en ;
    schema:jobTitle "Professor Emeritus"@en ;
    schema:affiliation :universityOfWashington ;
    schema:description "Professor Emeritus at the University of Washington, author of 'The Master Algorithm', and originator of Tensor Logic, presented as a keynote at ODSC AI East 2026."@en ;
    schema:knowsAbout :tensorLogicConcept .

:universityOfWashington a schema:CollegeOrUniversity ;
    owl:sameAs dbr:University_of_Washington ;
    schema:name "University of Washington"@en .

:odsc a schema:Organization ;
    schema:name "ODSC - Open Data Science"@en ;
    schema:url "https://opendatascience.com/"^^xsd:anyURI ;
    schema:description "Open Data Science Conference organization; publisher of the Medium recap article and organizer of the ODSC AI East 2026 conference where Pedro Domingos delivered the Tensor Logic keynote."@en .

:odscAiEast2026 a schema:Event ;
    schema:name "ODSC AI East 2026"@en ;
    schema:organizer :odsc ;
    schema:description "Open Data Science conference at which Pedro Domingos delivered a keynote introducing Tensor Logic as a unifying language for AI."@en ;
    schema:subEvent :domingosKeynote .

:domingosKeynote a schema:Event ;
    schema:name "Tensor Logic: The Language of AI (Keynote)"@en ;
    schema:performer :pedroDomingos ;
    schema:superEvent :odscAiEast2026 ;
    schema:about :tensorLogicConcept .

# ── Central concept ──────────────────────────────────────────────────────────

:tensorLogicConcept a schema:DefinedTerm ;
    schema:name "Tensor Logic"@en ;
    schema:description "A framework proposed by Pedro Domingos that merges tensor algebra and logic programming by treating relations as sparse Boolean tensors, so that logic rules and tensor equations become mathematically identical, unifying symbolic reasoning with gradient-based deep learning."@en ;
    schema:isPartOf :glossarySection .

# ── Quotations ────────────────────────────────────────────────────────────────

:quotationsSection a schema:ItemList ;
    schema:name "Quotations"@en ;
    schema:itemListElement :q_definitiveLanguage ;
    schema:hasPart :q_definitiveLanguage .

:q_definitiveLanguage a schema:Quotation ;
    schema:position 1 ;
    schema:text "Fields only truly take off when they find their definitive language."@en ;
    schema:citation :domingosKeynote ;
    schema:creator :pedroDomingos ;
    schema:isPartOf :quotationsSection .

# ── The six Tensor Logic principles (ordered framework) ────────────────────

:principlesSection a schema:ItemList ;
    schema:name "Tensor Logic Principles"@en ;
    schema:description "The ordered sequence of ideas Tensor Logic builds on, from unifying data structures through to expressing complete neural architectures."@en ;
    schema:itemListElement :relationsAsTensorsPrinciple, :einsumPrinciple, :tensorProjectionPrinciple,
                            :tensorJoinPrinciple, :backpropThroughStructurePrinciple, :architectureCompressionPrinciple ;
    schema:hasPart :relationsAsTensorsPrinciple, :einsumPrinciple, :tensorProjectionPrinciple,
                    :tensorJoinPrinciple, :backpropThroughStructurePrinciple, :architectureCompressionPrinciple .

:relationsAsTensorsPrinciple a :TensorLogicPrinciple ;
    schema:position 1 ;
    schema:name "Relations as Sparse Boolean Tensors"@en ;
    schema:description "A logical relation, such as parent(Bob, Chris), is a compact representation of a sparse Boolean tensor: a matrix or higher-dimensional array where a 1 marks a true fact (e.g. a connection in a social network) and a 0 marks its absence. Representing only the non-zero entries lets a database of logical facts be treated directly as tensor data, closing the gap between symbolic facts and numerical arrays."@en ;
    :enablesCapability "Lets logic-program facts be stored and manipulated using the same sparse-tensor data structures deep learning already relies on."^^xsd:string ;
    schema:isPartOf :principlesSection .

:einsumPrinciple a :TensorLogicPrinciple ;
    schema:position 2 ;
    schema:name "Einstein Summation (EinSum)"@en ;
    schema:description "A notation that simplifies tensor algebra by implicitly summing over any index repeated within a term, removing the need for explicit summation signs. EinSum is already implemented in NumPy and PyTorch but is rarely used to its full potential. In Tensor Logic, a logic rule (e.g. defining an 'aunt' relation) is rewritten as a single EinSum-based tensor equation over Boolean tensors, using a step function as the nonlinearity."@en ;
    :enablesCapability "Turns a symbolic logic rule into a single tensor equation, mathematically identical to the corresponding EinSum computation rather than a separate process run alongside it."^^xsd:string ;
    schema:isPartOf :principlesSection .

:tensorProjectionPrinciple a :TensorLogicPrinciple ;
    schema:position 3 ;
    schema:name "Tensor Projection"@en ;
    schema:description "A generalization of the database 'projection' operation: summing a tensor's elements across specific indices to collapse one or more dimensions, such as projecting a matrix onto a vector."@en ;
    :enablesCapability "Generalizes a familiar relational-database operation into the tensor domain so database-style queries can run over the same structures used for learning."^^xsd:string ;
    schema:isPartOf :principlesSection .

:tensorJoinPrinciple a :TensorLogicPrinciple ;
    schema:position 4 ;
    schema:name "Tensor Join"@en ;
    schema:description "A generalization of the database 'join' operation: when two tensors share common indices, their corresponding values are multiplied together. When the tensors are Boolean, this operation reduces exactly to a standard database join."@en ;
    :enablesCapability "Gives Tensor Logic a join operator that is provably identical to relational-database join in the Boolean case, while extending smoothly to weighted, continuous-valued tensors."^^xsd:string ;
    schema:isPartOf :principlesSection .

:backpropThroughStructurePrinciple a :TensorLogicPrinciple ;
    schema:position 5 ;
    schema:name "Backpropagation Through Structure"@en ;
    schema:description "Because a Tensor Logic program is built from a single construct — the tensor equation — its gradient is simply another Tensor Logic program, making differentiation straightforward. 'Backpropagation through structure' generalizes backpropagation through time (used in Recurrent Neural Networks) so gradients can be computed even when the network of rules and facts differs for every example, letting symbolic structures themselves be learned via gradient descent on standard deep-learning hardware."@en ;
    :enablesCapability "Enables gradient-based learning of symbolic structures whose shape varies per example, reusing the same hardware acceleration that made deep learning scalable."^^xsd:string ;
    schema:isPartOf :principlesSection .

:architectureCompressionPrinciple a :TensorLogicPrinciple ;
    schema:position 6 ;
    schema:name "Architecture Compression"@en ;
    schema:description "Because Tensor Logic is so concise, complex modern neural network architectures can be reduced to just one or two equations each — turning them into logic-based tensor equations that are easier to debug, experiment with, and generate automatically."@en ;
    :enablesCapability "Makes an architecture's full computation legible as a small number of equations instead of opaque layer-by-layer code, improving debuggability and interpretability."^^xsd:string ;
    schema:isPartOf :principlesSection .

# ── Architectures expressible in Tensor Logic ───────────────────────────────

:architecturesSection a schema:ItemList ;
    schema:name "Architectures Expressed in Tensor Logic"@en ;
    schema:itemListElement :perceptronArchitecture, :rnnArchitecture, :cnnArchitecture, :transformerArchitecture ;
    schema:hasPart :perceptronArchitecture, :rnnArchitecture, :cnnArchitecture, :transformerArchitecture .

:perceptronArchitecture a :NeuralArchitecture ;
    schema:position 1 ;
    schema:name "Perceptron"@en ;
    :expressedAs "A one-layer perceptron is defined in a single line combining a step function and a dot product."^^xsd:string ;
    schema:isPartOf :architecturesSection .

:rnnArchitecture a :NeuralArchitecture ;
    schema:position 2 ;
    schema:name "Recurrent Neural Network (RNN)"@en ;
    :expressedAs "Expressed by accounting for time indices and previous hidden states within the tensor join."^^xsd:string ;
    schema:isPartOf :architecturesSection .

:cnnArchitecture a :NeuralArchitecture ;
    schema:position 3 ;
    schema:name "Convolutional Neural Network (CNN)"@en ;
    :expressedAs "Convolution and pooling layers are represented using offset indices and summation."^^xsd:string ;
    schema:isPartOf :architecturesSection .

:transformerArchitecture a :NeuralArchitecture ;
    schema:position 4 ;
    schema:name "Transformer"@en ;
    :expressedAs "Multi-head attention and residual streams are captured in a handful of tensor equations."^^xsd:string ;
    schema:isPartOf :architecturesSection .

# ── Prior AI languages / tools that motivate Tensor Logic ──────────────────

:priorLanguagesSection a schema:ItemList ;
    schema:name "Prior AI Languages and Tools"@en ;
    schema:itemListElement :lispLanguage, :prologLanguage, :graphicalModels, :pythonPytorchStack ;
    schema:hasPart :lispLanguage, :prologLanguage, :graphicalModels, :pythonPytorchStack .

:lispLanguage a :PriorLanguage ;
    schema:position 1 ;
    schema:name "Lisp"@en ;
    owl:sameAs dbr:Lisp_\(programming_language\) ;
    :strength "Rigorous symbolic reasoning."^^xsd:string ;
    :limitation "Limited ability to learn from raw data or scale with modern gradient-based methods."^^xsd:string ;
    schema:isPartOf :priorLanguagesSection .

:prologLanguage a :PriorLanguage ;
    schema:position 2 ;
    schema:name "Prolog"@en ;
    owl:sameAs dbr:Prolog ;
    :strength "Rigorous logic-programming reasoning over facts and rules."^^xsd:string ;
    :limitation "Same fragmentation from tensor-based scalability as other 1950s-70s symbolic languages."^^xsd:string ;
    schema:isPartOf :priorLanguagesSection .

:graphicalModels a :PriorLanguage ;
    schema:position 3 ;
    schema:name "1990s Graphical Models"@en ;
    owl:sameAs dbr:Graphical_model ;
    :strength "Structured probabilistic reasoning over relationships between variables."^^xsd:string ;
    :limitation "Still struggled to balance rigorous reasoning with scalability."^^xsd:string ;
    schema:isPartOf :priorLanguagesSection .

:pythonPytorchStack a :PriorLanguage ;
    schema:position 4 ;
    schema:name "Python / PyTorch Stack"@en ;
    :strength "Excels at gradient descent and scales effortlessly with modern hardware."^^xsd:string ;
    :limitation "Lacks native automated logical reasoning; operates as a 'black box' without built-in logical structure."^^xsd:string ;
    schema:isPartOf :priorLanguagesSection ;
    schema:hasPart :python, :pytorch, :numpy .

:python a schema:SoftwareApplication ;
    owl:sameAs dbr:Python_\(programming_language\) ;
    schema:name "Python"@en .

:pytorch a schema:SoftwareApplication ;
    owl:sameAs dbr:PyTorch ;
    schema:name "PyTorch"@en ;
    schema:description "Deep learning library that already implements Einstein Summation (EinSum), underused by most practitioners."@en .

:numpy a schema:SoftwareApplication ;
    owl:sameAs dbr:NumPy ;
    schema:name "NumPy"@en ;
    schema:description "Numerical computing library that already implements Einstein Summation (EinSum), underused by most practitioners."@en .

# ── Known implementations ────────────────────────────────────────────────────

:arxivPaper a schema:ScholarlyArticle ;
    schema:name "Tensor Logic: The Language of AI"@en ;
    schema:author :pedroDomingos ;
    schema:url "https://arxiv.org/abs/2510.12269"^^xsd:anyURI ;
    schema:datePublished "2025-10-14"^^xsd:date ;
    schema:identifier "arXiv:2510.12269"@en ;
    schema:description "The formal arXiv paper underlying the ODSC AI East 2026 keynote. Proposes tensor logic as a unified programming language for AI whose sole construct, the tensor equation, lets neural networks (transformers, kernel machines), symbolic reasoning, and graphical models all be expressed in the same formalism."@en .

:implementationsSection a schema:ItemList ;
    schema:name "Known Implementations"@en ;
    schema:description "As of this writing, no reference implementation from Pedro Domingos himself is known to be published. The implementations below are independent, community-built reimplementations based on his arXiv paper — not official releases."@en ;
    schema:itemListElement :juliaImplementation, :cppImplementation, :pythonImplementation ;
    schema:hasPart :juliaImplementation, :cppImplementation, :pythonImplementation .

:juliaImplementation a schema:SoftwareSourceCode ;
    schema:position 1 ;
    schema:name "tensor-logic (Julia)"@en ;
    schema:programmingLanguage "Julia"@en ;
    schema:codeRepository "https://github.com/zekebass/tensor-logic"^^xsd:anyURI ;
    schema:license "https://opensource.org/licenses/MIT"^^xsd:anyURI ;
    schema:author <https://github.com/zekebass#this> ;
    schema:isBasedOn :arxivPaper ;
    schema:description "Community Julia implementation unifying neural and symbolic AI by treating relations as sparse Boolean tensors and Datalog rules as Einstein summations. README states it is built by Zeke Bass and Claude Opus 4.5 (Anthropic) in a pair-programming session, December 2025, inspired by a Machine Learning Street Talk podcast episode with Pedro Domingos."@en ;
    :isOfficialImplementation false ;
    schema:isPartOf :implementationsSection .

<https://github.com/zekebass#this> a schema:Person ;
    schema:name "Zeke Bass"@en ;
    schema:url "https://github.com/zekebass"^^xsd:anyURI .

:cppImplementation a schema:SoftwareSourceCode ;
    schema:position 2 ;
    schema:name "tensor-logic-cpp"@en ;
    schema:programmingLanguage "C++"@en ;
    schema:codeRepository "https://github.com/harshaljanjani/tensor-logic-cpp"^^xsd:anyURI ;
    schema:license "https://www.apache.org/licenses/LICENSE-2.0"^^xsd:anyURI ;
    schema:author <https://github.com/harshaljanjani#this> ;
    schema:isBasedOn :arxivPaper ;
    schema:description "Community C++ implementation described as production-ready, providing a unified framework for neural and symbolic AI by representing logical relations as sparse Boolean tensors, explicitly based on Domingos's arXiv:2510.12269v3."@en ;
    :isOfficialImplementation false ;
    schema:isPartOf :implementationsSection .

<https://github.com/harshaljanjani#this> a schema:Person ;
    schema:name "harshaljanjani"@en ;
    schema:url "https://github.com/harshaljanjani"^^xsd:anyURI .

:pythonImplementation a schema:SoftwareSourceCode ;
    schema:position 3 ;
    schema:name "tensorlogic (Python)"@en ;
    schema:programmingLanguage "Python"@en ;
    schema:codeRepository "https://github.com/Kocoro-lab/tensorlogic"^^xsd:anyURI ;
    schema:license "https://opensource.org/licenses/MIT"^^xsd:anyURI ;
    schema:author <https://github.com/Kocoro-lab#this> ;
    schema:isBasedOn :arxivPaper ;
    schema:description "Community Python implementation of Tensor Logic combining neural and symbolic reasoning through tensor equations; README requests citation of Domingos's paper and is discussed in a companion blog post, 'Tensor Logic: A Brain-Like Architecture' (waylandz.com, October 21, 2025)."@en ;
    :isOfficialImplementation false ;
    schema:isPartOf :implementationsSection .

<https://github.com/Kocoro-lab#this> a schema:Organization ;
    schema:name "Kocoro-lab"@en ;
    schema:url "https://github.com/Kocoro-lab"^^xsd:anyURI .

:logicTensorNetworks a schema:SoftwareApplication ;
    schema:name "Logic Tensor Networks (LTN)"@en ;
    schema:codeRepository "https://github.com/logictensornetworks/LTNtorch"^^xsd:anyURI ;
    schema:description "A PyTorch neuro-symbolic framework with a similarly-worded name. Pre-dates and is UNRELATED to Pedro Domingos's Tensor Logic — a common point of confusion the reader should not conflate with the framework described in this document."@en ;
    rdfs:comment "Disambiguation entity only: included to prevent readers from mistaking this pre-existing, differently-authored framework for Domingos's Tensor Logic."@en .

# ── FAQ (>= 12) ──────────────────────────────────────────────────────────────

:faqSection a schema:FAQPage ;
    schema:name "Frequently Asked Questions"@en ;
    schema:mainEntity :q1, :q2, :q3, :q4, :q5, :q6, :q7, :q8, :q9, :q10, :q11, :q12, :q13, :q14, :q15 ;
    schema:hasPart :q1, :q2, :q3, :q4, :q5, :q6, :q7, :q8, :q9, :q10, :q11, :q12, :q13, :q14, :q15 .

:q1 a schema:Question ; schema:position 1 ; schema:isPartOf :faqSection ;
    schema:name "What is Tensor Logic?"@en ;
    schema:acceptedAnswer :a1 .
:a1 a schema:Answer ;
    schema:text "Tensor Logic is a framework proposed by Pedro Domingos that unifies symbolic AI and deep learning by treating logical relations as sparse Boolean tensors, so that logic programs and tensor algebra become mathematically identical rather than two separate systems bolted together."@en .

:q2 a schema:Question ; schema:position 2 ; schema:isPartOf :faqSection ;
    schema:name "Why does AI need a 'definitive language' at all?"@en ;
    schema:acceptedAnswer :a2 .
:a2 a schema:Answer ;
    schema:text "Pedro Domingos argues that fields only truly take off once they find their definitive language — a shared notation precise enough for rigorous reasoning yet flexible enough to scale. AI has lacked that until now, oscillating between symbolic languages (rigorous but not scalable) and deep-learning frameworks (scalable but not reasoning-native)."@en .

:q3 a schema:Question ; schema:position 3 ; schema:isPartOf :faqSection ;
    schema:name "What problem in AI is Tensor Logic trying to solve?"@en ;
    schema:acceptedAnswer :a3 .
:a3 a schema:Answer ;
    schema:text "The historical fragmentation between symbolic AI, which reasons rigorously but struggles to learn from raw data, and deep learning, which scales effortlessly but remains an opaque, logic-free 'black box'."@en .

:q4 a schema:Question ; schema:position 4 ; schema:isPartOf :faqSection ;
    schema:name "How does Tensor Logic represent a logical fact like parent(Bob, Chris)?"@en ;
    schema:acceptedAnswer :a4 .
:a4 a schema:Answer ;
    schema:text "As a non-zero entry in a sparse Boolean tensor. A relation is treated as a compact representation of that tensor: a '1' marks a true fact (e.g. a connection between two people) and a '0' marks its absence, so a whole database of facts becomes tensor data."@en .

:q5 a schema:Question ; schema:position 5 ; schema:isPartOf :faqSection ;
    schema:name "What is Einstein Summation (EinSum) and why does it matter here?"@en ;
    schema:acceptedAnswer :a5 .
:a5 a schema:Answer ;
    schema:text "EinSum is a notation that implicitly sums over any index repeated within a term, removing explicit summation signs. It is already built into NumPy and PyTorch but underused. Tensor Logic uses EinSum to rewrite logic rules as tensor equations, making logic programming and tensor manipulation mathematically the same operation."@en .

:q6 a schema:Question ; schema:position 6 ; schema:isPartOf :faqSection ;
    schema:name "What is tensor projection?"@en ;
    schema:acceptedAnswer :a6 .
:a6 a schema:Answer ;
    schema:text "A generalization of the database projection operation: summing a tensor's elements across specific indices to collapse one or more dimensions, such as reducing a matrix down to a vector."@en .

:q7 a schema:Question ; schema:position 7 ; schema:isPartOf :faqSection ;
    schema:name "What is tensor join, and how does it relate to database joins?"@en ;
    schema:acceptedAnswer :a7 .
:a7 a schema:Answer ;
    schema:text "Tensor join generalizes the database join: when two tensors share common indices, their corresponding values are multiplied. If both tensors are Boolean, this operation reduces exactly to a standard database join — the numerical operation and the relational-database operation are the same thing in that special case."@en .

:q8 a schema:Question ; schema:position 8 ; schema:isPartOf :faqSection ;
    schema:name "What is 'backpropagation through structure'?"@en ;
    schema:acceptedAnswer :a8 .
:a8 a schema:Answer ;
    schema:text "A generalization of backpropagation through time (used to train RNNs) that lets gradients be computed even when the network of rules and facts differs for every training example. It allows symbolic structures themselves — not just fixed-shape neural weights — to be learned via gradient descent."@en .

:q9 a schema:Question ; schema:position 9 ; schema:isPartOf :faqSection ;
    schema:name "Why is the gradient of a Tensor Logic program 'just another Tensor Logic program'?"@en ;
    schema:acceptedAnswer :a9 .
:a9 a schema:Answer ;
    schema:text "Because every Tensor Logic program is built from a single recurring construct — the tensor equation — differentiating it mechanically produces another set of tensor equations, keeping the entire system inside the same formalism rather than requiring a separate symbolic differentiation layer."@en .

:q10 a schema:Question ; schema:position 10 ; schema:isPartOf :faqSection ;
    schema:name "Can complex architectures like Transformers really be written in one or two equations?"@en ;
    schema:acceptedAnswer :a10 .
:a10 a schema:Answer ;
    schema:text "According to the keynote, yes: because Tensor Logic is so concise, even a Transformer's multi-head attention and residual streams can be captured in a handful of tensor equations, in contrast to the many lines of framework-specific code typically needed."@en .

:q11 a schema:Question ; schema:position 11 ; schema:isPartOf :faqSection ;
    schema:name "Which existing tools already implement pieces of Tensor Logic's approach?"@en ;
    schema:acceptedAnswer :a11 .
:a11 a schema:Answer ;
    schema:text "NumPy and PyTorch already implement Einstein Summation (EinSum), one of Tensor Logic's core mechanisms — but the keynote argues its full potential is rarely realized by practitioners today."@en .

:q12 a schema:Question ; schema:position 12 ; schema:isPartOf :faqSection ;
    schema:name "Why does interpretability matter enough to justify a new language?"@en ;
    schema:acceptedAnswer :a12 .
:a12 a schema:Answer ;
    schema:text "As AI increasingly runs critical infrastructure, models must be both high-performing and interpretable. Tensor Logic aims to let neural networks gain the reliability of symbolic AI while symbolic systems gain the learnability of deep learning — enabling reasoning in embedding spaces that is both sound and transparent."@en .

:q13 a schema:Question ; schema:position 13 ; schema:isPartOf :faqSection ;
    schema:name "Who is Pedro Domingos?"@en ;
    schema:acceptedAnswer :a13 .
:a13 a schema:Answer ;
    schema:text "Pedro Domingos is Professor Emeritus at the University of Washington, author of 'The Master Algorithm', and the originator of Tensor Logic, which he introduced in his ODSC AI East 2026 keynote."@en .

:q14 a schema:Question ; schema:position 14 ; schema:isPartOf :faqSection ;
    schema:name "What historical AI languages does Tensor Logic build on or move past?"@en ;
    schema:acceptedAnswer :a14 .
:a14 a schema:Answer ;
    schema:text "Lisp and Prolog (1950s-70s symbolic reasoning languages), 1990s graphical models, and the modern Python/PyTorch stack — each offered either rigorous reasoning or scalability, but historically not both at once."@en .

:q15 a schema:Question ; schema:position 15 ; schema:isPartOf :faqSection ;
    schema:name "Are there any known systems using Tensor Logic?"@en ;
    schema:acceptedAnswer :a15 .
:a15 a schema:Answer ;
    schema:text "No official implementation from Pedro Domingos himself is known to be published, and no widely-adopted production system is known to run on Tensor Logic — the formal arXiv paper (2510.12269) is barely a year old. Three independent community reimplementations exist based on that paper: a Julia implementation (github.com/zekebass/tensor-logic), a C++ implementation (github.com/harshaljanjani/tensor-logic-cpp), and a Python implementation (github.com/Kocoro-lab/tensorlogic). None are official releases. Note also that 'Logic Tensor Networks' (LTNtorch) is a separate, pre-existing, unrelated PyTorch framework despite the similar name."@en .

# ── Glossary (>= 10) ─────────────────────────────────────────────────────────

:glossarySection a skos:ConceptScheme, schema:DefinedTermSet ;
    schema:name "Glossary"@en ;
    schema:hasDefinedTerm :tensorLogicConcept, :term_tensor, :term_sparseBooleanTensor, :term_einsum,
        :term_tensorProjection, :term_tensorJoin, :term_backpropThroughStructure, :term_neuroSymbolicAi,
        :term_symbolicAi, :term_deepLearning, :term_databaseJoin, :term_stepFunction ;
    schema:hasPart :tensorLogicConcept, :term_tensor, :term_sparseBooleanTensor, :term_einsum,
        :term_tensorProjection, :term_tensorJoin, :term_backpropThroughStructure, :term_neuroSymbolicAi,
        :term_symbolicAi, :term_deepLearning, :term_databaseJoin, :term_stepFunction .

:term_tensor a schema:DefinedTerm ;
    schema:name "Tensor"@en ;
    schema:description "A generalization of vectors and matrices to arbitrary dimensions, defined by its type and shape; the fundamental data structure of deep learning."@en ;
    schema:isPartOf :glossarySection .

:term_sparseBooleanTensor a schema:DefinedTerm ;
    schema:name "Sparse Boolean Tensor"@en ;
    schema:description "A tensor whose entries are mostly zero, storing only the non-zero (true) entries — the representation Tensor Logic uses to encode logical relations and facts efficiently."@en ;
    schema:isPartOf :glossarySection .

:term_einsum a schema:DefinedTerm ;
    schema:name "Einstein Summation (EinSum)"@en ;
    schema:description "A tensor-algebra notation in which any index repeated within a term is implicitly summed over, eliminating explicit summation signs; implemented in NumPy and PyTorch."@en ;
    schema:isPartOf :glossarySection .

:term_tensorProjection a schema:DefinedTerm ;
    schema:name "Tensor Projection"@en ;
    schema:description "Summing a tensor's elements across specific indices to collapse dimensions — the tensor-domain generalization of the database projection operation."@en ;
    schema:isPartOf :glossarySection .

:term_tensorJoin a schema:DefinedTerm ;
    schema:name "Tensor Join"@en ;
    schema:description "Multiplying corresponding values where two tensors share indices — the tensor-domain generalization of the database join operation; reduces to a standard join when both tensors are Boolean."@en ;
    schema:isPartOf :glossarySection .

:term_backpropThroughStructure a schema:DefinedTerm ;
    schema:name "Backpropagation Through Structure"@en ;
    schema:description "A generalization of backpropagation through time that computes gradients even when the network of rules and facts differs per example, enabling gradient-based learning of symbolic structure itself."@en ;
    schema:isPartOf :glossarySection .

:term_neuroSymbolicAi a schema:DefinedTerm ;
    owl:sameAs dbr:Neuro-symbolic_AI ;
    schema:name "Neuro-Symbolic AI"@en ;
    schema:description "The broader research field combining neural networks with symbolic reasoning; Tensor Logic is presented as fulfilling the long-elusive goal of merging logical transparency with tensor scalability within this field."@en ;
    schema:isPartOf :glossarySection .

:term_symbolicAi a schema:DefinedTerm ;
    owl:sameAs dbr:Symbolic_artificial_intelligence ;
    schema:name "Symbolic AI"@en ;
    schema:description "AI built on explicit logical rules and facts, capable of rigorous reasoning but historically limited in learning from raw data."@en ;
    schema:isPartOf :glossarySection .

:term_deepLearning a schema:DefinedTerm ;
    owl:sameAs dbr:Deep_learning ;
    schema:name "Deep Learning"@en ;
    schema:description "Gradient-based neural network learning that scales effortlessly with data and compute, but is often criticized as an opaque 'black box' lacking logical structure."@en ;
    schema:isPartOf :glossarySection .

:term_databaseJoin a schema:DefinedTerm ;
    owl:sameAs dbr:Join_\(SQL\) ;
    schema:name "Database Join"@en ;
    schema:description "The relational-database operation of combining rows from two tables based on shared keys; tensor join reduces exactly to this operation when applied to Boolean tensors."@en ;
    schema:isPartOf :glossarySection .

:term_stepFunction a schema:DefinedTerm ;
    owl:sameAs dbr:Step_function ;
    schema:name "Step Function"@en ;
    schema:description "A nonlinearity that outputs a discrete value change at a threshold; used in Tensor Logic as the nonlinearity applied to EinSum-based tensor equations when encoding logic rules."@en ;
    schema:isPartOf :glossarySection .
