Ever since I learned about category theory and its relationship with symbolic reasoning I've suspected that AGI will come from elegantly combining symbolic reasoning and probabilistic reasoning. This is the first project I've seen that seems to be positioned that way. Very cool.
When LLMs code in order to reason, isn’t that a combination of probabilistic reasoning and symbolic reasoning?
Scallop – A Language for Neurosymbolic Programming
11–20 of 68 posts
Re: Scallop – A Language for Neurosymbolic Programming
#12It seems like schizo ramblings to me. But I'm sure there's some merit to it.
Re: Scallop – A Language for Neurosymbolic Programming
#13A bit over my head - but can't Prolog achieve similar results?
So it's intended to combine nn reasoning and logical reasoning cleanly.
Re: Scallop – A Language for Neurosymbolic Programming
#14If you like scallop, you are gonna love lobster: https://liby99.github.io/res/papers/lobster.pdf
you seem to be more in the know than me :) Please could you just sketch out a few bullets and explain the relationship between Scallop and Lobster and what you think is going on?
Re: Scallop – A Language for Neurosymbolic Programming
#15I really love the concept. This isn't just differentiable neurosymbolic declarative probabilistic programming; Scallop has the flexibility of letting you use various (18 included) or custom provenance semirings to e.g. track "proofs" why a relational fact holds, not just assign it a probability. Sounds cool but I'm still trying to figure out the practicality.
Also worth pointing out that it seems that a lot of serious engineering work has been done on Scallop. It has an interpreter and a JIT compiler down to Rust compiled and dynamically loaded as a Python module.
Because a Scallop program (can be) differentiable it can be used anywhere in an end-to-end learning system, it doesn't have to take input data from a NN and produce your final outputs, as in all the examples they give (as far as I can see). For example you probably could create a hybrid transformer which runs some Scallop code in an internal layer, reading/writing to the residual stream. A simpler/more realistic example is to compute features fed into a NN e.g. an agent's policy function.
The limitation of Scallop is that the programs themselves are human-coded, not learnt, although they can implement interpreters/evaluators (e.g. the example of evaluating expressions).
Re: Scallop – A Language for Neurosymbolic Programming
#16I wish this website explained what neurosymbolic means.
A neural network (PyTorch) detects objects and actions in the image, recognizing "Jim" and "eating a burger" with a confidence score.
A symbolic reasoning system (Scallop) takes this detection along with past data (e.g., "Jim ate burgers 5 times last month") and applies logical rules like:
likes(X, Food) :- frequently_eats(X, Food).
frequently_eats(Jim, burgers) if Jim ate burgers > 3 times recently.
The system combines the image-based probability with past symbolic facts to infer: "Jim likely likes burgers" (e.g., 85% confidence).This allows for both visual perception and logical inference in decision-making.
Re: Scallop – A Language for Neurosymbolic Programming
#17If you like scallop, you are gonna love lobster: https://liby99.github.io/res/papers/lobster.pdf
Thank you. you seem to be more in the know than me :) Please could you just sketch out a few bullets and explain the relationship between Scallop and Lobster and what you think is going on?
Re: Scallop – A Language for Neurosymbolic Programming
#18Wow, I'm currently reading the Scallop paper, so funny to see it posted here! I really love the concept. This isn't just differentiable neurosymbolic declarative probabilistic programming; Scallop has the flexibility of letting you use various (18 included) or custom provenance semirings to e.g. track "proofs" why a relational fact holds, not just assign it a probability. Sounds cool but I'm still trying to figure ou…
Re: Scallop – A Language for Neurosymbolic Programming
#19If you like scallop, you are gonna love lobster: https://liby99.github.io/res/papers/lobster.pdf
Re: Scallop – A Language for Neurosymbolic Programming
#20https://en.wikipedia.org/wiki/Fibonacci_sequence
This one was easy to spot and would have been easy to get right. Makes me wonder…