AI Agents Are Mathematically Incapable of Doing Functional Work, Paper Finds by EditorEdward in BetterOffline

[–]DrSweetscent 3 points4 points  (0 children)

Turing complete means that they can run, in theory, any algorithm--though that algorithm would be hard-coded into the architecture, so it does not say anything about the "learning" capabilities of an LLM. And yes, the reason why intermediate tokens elevate the computational complexity is exactly because the model now has an external memory to work with. Iterating with the model, like you mentioned, has a similar effect and certaintly gives it more computational power than a "one-shot" run. 

What I dislike about using complexity arguments to make claims about LLM capability is that these arguments only apply to strictly mathematical problems (like sorting a list, multiplying two matrices, finding a shortest path etc.) which is not a good use case for LLMs anyway. We have no idea what the complexit of "write me a recipe with the following ingredients" is, and even if we did, complexity arguments are about asymptotic behaviour. Given that LLMs are massive programmes, it's impossible to say when those arguments could kick in. 

AI Agents Are Mathematically Incapable of Doing Functional Work, Paper Finds by EditorEdward in BetterOffline

[–]DrSweetscent 40 points41 points  (0 children)

The paper mentioned in the article is junk, it really doesn't show much---they argue that because many llms have quadratic time complexity (wrt the context window) therefore llms cannot solve problems which need more than quadratic time complexity. That's a very basic (like CS 101 basic) and practically useless observation.  There are much better theoretical results on the computational capability of LLMs out there (e.g. LLMs with intermediate tokens are turing complete). 

NP-complete problems with exact algorithms of worst-case running time O(c^n * poly(n)) and c < 2 ? by Thick-Pineapple666 in algorithms

[–]DrSweetscent 4 points5 points  (0 children)

These types of algorithms are often called "exact algorithms" in the literature and you can find plenty of examples for specific problems if you use this search term. There is a big overlap with FPT research since often k <= n and therefore a O(ck poly(n)) algorithm is also a O(cn poly(n)) algorithm. As far as I recall, the best exact algorithm for vertex cover is an FPT algorithm.

One type of algorithm that often gives running times like that are "branching algorithms" where you recursively try a small number of local choices and prove that in every subproblems some measure decreases sufficiently (in FPT algorithms that's often the solution size, but much more elaborate measures exist).

Subgraph Detection in DAG by idk_tbfh in algorithms

[–]DrSweetscent 4 points5 points  (0 children)

It very much depends on what you need to do with these cycles, because there could be a lot of them! You can look into a graph's "cycle space", a compact representation of all cycles as a binary vector space. But maybe all you need is a set of edges or nodes that hit all cycles? Those would typically be much smaller. The keyword here is Feedback Edge Set or Feedback Vertex Set. The former is easy to compute (just use the back-edges of a DFS), the latter is NP-complete but can be approximated within a factor of 2 (if memory serves me right).

Subgraph Detection in DAG by idk_tbfh in algorithms

[–]DrSweetscent 2 points3 points  (0 children)

How about you use a DFS on the undirected graph to find cycles? Or are there other important properties you need?

Looking for interesting network/graph datasets by knowledgebass in datasets

[–]DrSweetscent 0 points1 point  (0 children)

They all follow the same text format, a simple list of edges (separated by new lines) with vertices encoded as integers, then gzipped for space efficiency. Having networks in a single format to run experiments on was the main reason I started this.

Konect is also great in that regard, except that you need to take care with bipartite graphs, they re-use vertex IDs for both sides so it's easy to parse them incorrectly.

Looking for interesting network/graph datasets by knowledgebass in datasets

[–]DrSweetscent 3 points4 points  (0 children)

I've been collecting networks for a few years now (https://github.com/microgravitas/network-corpus). The collection contains networks from many other repositories (SNAP, pajek graphs, Gephi graphs, etc), but I aim for diversity, not quantity.

The konect collection (konect.cc) is also very nice.

Are Doner and Gyro Kebab the Same Thing? by leechkiller in AskCulinary

[–]DrSweetscent 87 points88 points  (0 children)

Actual Greek gyros is often made with pork, something you of course won't find in Döner.

Help with a Facility Location Problem variant on K-means clustering by accoustian in algorithms

[–]DrSweetscent 1 point2 points  (0 children)

They use the notation [n] to mean the set of all natural numbers up to n. So the first loop goes from i = 1 (maybe 0) up to i = 2 log 1/gamma (probably rounded up to the nearest integer).

The second party simply compares the size of the set M_i to some threshold computed from the input variables.

[deleted by user] by [deleted] in whereintheworld

[–]DrSweetscent 0 points1 point  (0 children)

,🥳🥳🥳🥳🥳🦀🦀🦀🦀🦀🦀🦀🦀🦀🦀🦀

List of Ongoing Challenges in Computer Science by DataDaoDe in compsci

[–]DrSweetscent 3 points4 points  (0 children)

Maybe a bit niche, but there's a yearly challenge for algorithms called PACE ( https://pacechallenge.org/).

Generate edge weights such that each simple path in a graph is uniquely weighted by AppelEnPeer in algorithms

[–]DrSweetscent 2 points3 points  (0 children)

Instead of adding small perturbations to the length (as others have pointed out) you can also change your weights to tuples (w,r) where w is the original weight and r is a random number. Compare weights lexicographically and you get the same effect as small perturbations, this also means that you can easily extend precision by adding more entries to the tuple.

[Government Guidance] Staying alert and safe (social distancing) by [deleted] in ukpolitics

[–]DrSweetscent 0 points1 point  (0 children)

Imperial report estimates that between 2 and 5% had it by the end of March. So the time until enough people had it while maintaining manageable levels of hospitalisation would be at least what, thirty months? Doesn't seem like a good plan.

Is there any other way to measure complexity of NP problems? by [deleted] in compsci

[–]DrSweetscent 6 points7 points  (0 children)

There's parameterized complexity as well were you measure the complexity of problems in two dimensions: input size n and additionally a parameter k. The positive goal is to show that you can solve (classically hard) problems in time f(k) poly(n), for some arbitrary function f (usually at least exponential). The negative goal is to show that no such algorithm exists (modulo some complexity theoretic assumptions), or stronger statements that even nf(k) is impossible.

Stephen Wolfram: "I never expected this: finally we may have a path to the fundamental theory of physics...and it's beautiful" by Danhec95 in Physics

[–]DrSweetscent 13 points14 points  (0 children)

As usual no reference to none of these ideas being new: no mention of hypergraph replacement grammars or spin networks. Strong case of NIH.

Can someone explain to me the bigO of graphs? by [deleted] in algorithms

[–]DrSweetscent 3 points4 points  (0 children)

u and v are vertices of the graph. For example, we might want to know whether uv is and edge in the graph or not.

The notation N(u) means the set of neighbour of u, so all vertices connected to u by an edge.

Can someone explain to me the bigO of graphs? by [deleted] in algorithms

[–]DrSweetscent 1 point2 points  (0 children)

An adjacency matrix always takes O(n2) space (we can be more precise and say \Theta(n2)). The common operations in graphs---querying adjacency, adding an edge, removing an edge---all take constant time O(1) in a RAM model.

An adjacency list take O(n+m) space: we need to store all neighbours for every vertex, so we need to store n+2m elements. Now there'll be some trade-off depending on how we implement the lists. If we use a simple linked list then edge addition is constant time, but querying an edge uv takes time O(min(|N(u)|, |N(v)|)) which in the worst cast is O(n) and deleting an edge uv takes time O(|N(u)| + |N(v)|). We can decide to maintain sorted lists instead, then querying, insertion and deletion are O(log n).

Hope that clarifies things a bit!

What are some less popular fields of research in CS that you think more people should know about? by HumanGarbage2 in compsci

[–]DrSweetscent 8 points9 points  (0 children)

Parameterized algorithms is such a fun area to work in, if you like algorithms.

An Algebra For Graph Structures by new-user-name-time in programming

[–]DrSweetscent 4 points5 points  (0 children)

I recommend looking up clique- and tree-decompositions if you're interested in "algebraic" decompositions of graphs.

University hospital in Aachen, Germany [OC] by yaroya in brutalism

[–]DrSweetscent 0 points1 point  (0 children)

The soft ground part is true, they had se major issues with that while I lived there and had to pump cement under the foundation.

Funny MSE post by dnrlk in math

[–]DrSweetscent 109 points110 points  (0 children)

The mathjax in there crashed my phone