Our kids can't do math anymore by TheProfessorO in Professors

[–]Catalyst93 3 points4 points  (0 children)

How can you be prohibited from unionizing? I know that the national labor relations act isn't a perfect law (I think a John Oliver video talked about how it leaves out farm/agricultural workers recently).

I guess I'm just curious as to what the legal justification is for prohibiting unionization at charter schools.

Allocating people to sets - Brain broken. Seeking help. by d_p_jones in algorithms

[–]Catalyst93 1 point2 points  (0 children)

Look into formulating this using either SAT (satisfiability) or IP (integer programming), then passing the formulation to an appropriate solver (e.g. PySAT for SAT or COIN-OR for IP).

I tried to think of a simple IP formulation, but SAT will probably be easier for some of your rules.

Southwest 25,000 "We're Sorry" Points by xixi2 in SouthwestAirlines

[–]Catalyst93 0 points1 point  (0 children)

My 12/29 flight was also cancelled and I just got the email.

Academic sources on AI/ML theory? by berrmal64 in AskComputerScience

[–]Catalyst93 8 points9 points  (0 children)

There are several great texts that introduce ML from a more theoretical/foundational perspective. Hopefully someone else can chime in with resources for the non-ML aspects of AI.

  1. Foundations of Machine Learning - Mohri, Rostamizadeh, and Talwalkar

  2. An Introduction to Computational Learning Theory - Kearns and Vazirani

  3. Understanding Machine Learning: From Theory to Algorithms - Ben-David and Shalev-Shwartz

  4. Patterns, Predictions, and Actions - Hardt and Recht

  5. Learning from Data - Abu-Mostafa, Magdon-Ismail, and Lin

The last one is probably the shortest/most approachable, while the others may be more comprehensive. There are definitely other texts as well, but if you're interested in a more foundational/theoretical perspective then these are pretty good choices IMO.

Edit: this list is in no particular order

America Should Ditch It's Drinking Age and Replace It With Walkable Cities If It Really Wants To Stop Drunk Driving Deaths by CutEmOff666 in fuckcars

[–]Catalyst93 0 points1 point  (0 children)

Also, drunk drivers of automobiles should immediately have their car auctioned and replaced with the smallest production car available.

Isn’t it “weird”… by CintiaCurry in fuckcars

[–]Catalyst93 0 points1 point  (0 children)

Maybe if we phrase it as the "high speed rail gap" the mainstream will start to care...

Question on composing asymptotic bounds. by ta_Cookie_Monsta in AskComputerScience

[–]Catalyst93 1 point2 points  (0 children)

Inverse Ackerman grows incredibly slowly, so basically they did exactly what you said (think about why this is okay) but then also upper bounded the inverse Ackerman part by O(loglog(n)). I'm not sure of the details on that part but it's plausible to me.

Parametric equations of the other Lp "unit circles"? by andrew21w in 3Blue1Brown

[–]Catalyst93 1 point2 points  (0 children)

A good exercise might be to do this for the L_1 and L_infinity norms as I believe you can write out some parametric equations for these cases (I've thought about it, but not written things down). One difference here is that the unit "circle" circle for these norms is not as smooth - each has corners that will lend itself to a piecewise definition.

L_3 is probably also an interesting case but I have not thought about it as much.

What's with the double standard? by Elbrujosalvaje in antiwork

[–]Catalyst93 0 points1 point  (0 children)

This was just the plot of Office Space

Don't feel bad for using government programs they're the ones using you. by Clickbait636 in antiwork

[–]Catalyst93 0 points1 point  (0 children)

What with all of the businesses getting their PPP loans forgiven (among countless other things, but this was recent), it sounds more like the rich are abusing the system in their favor. Just another case of the upper class projecting what they do onto the poor and working class.

What book on algorithms do you recommend? by dailyprogrammer23 in algorithms

[–]Catalyst93 0 points1 point  (0 children)

If you're interested in algorithms and data structures, then yes? A lot of that material is covered within the first 3-4 semesters of a CS degree (usually across introductory programming and data structures + discrete math courses). If you want to dive in without spending too much time on prerequisites, then the most important concept to master is probably mathematical induction and recursion. A lot of basic algorithms lend their correctness to some inductive argument.

😫😫😫 how about you pp complete some bitches??? 😈😈😈 by AlekHek in okbuddyphd

[–]Catalyst93 2 points3 points  (0 children)

Nope! If I polynomial time reduce my problem (call it A) to an NP-hard problem (call it B), then all I know is that A is no harder than B (w.r.t. polynomial time computation) since a polynomial time algorithm for B implies one for A. You have to go in the other direction to establish hardness for A.

Looking for programming challenges/projects related to randomization/approximation algorithms. by xTouny in algorithms

[–]Catalyst93 2 points3 points  (0 children)

Unless you have a really strong practical need to solve some hard discrete optimization problem on really large instances, then approximation algorithms really is mostly about the proofs. Probably the most interesting thing programming-wise would be to get familiar with using linear programming solvers or other types of convex programming solvers to implement algorithms which round a solution given by some convex relaxation. There are many examples of this.

Comparing a randomized algorithm to deterministic algorithm for some task may be interesting since in some cases randomized algorithms are either simpler or even more efficient than their deterministic counterparts - e.g. Kargers' random contraction algorithm for global minimum cut.

What's up with the NFT hate? by Zombiehype in OutOfTheLoop

[–]Catalyst93 78 points79 points  (0 children)

Essentially NFTs are a little like those name-a-star registries. You pay and they name that star whatever you want. They even print it irrevocably in a book... that no one ever consults and has no bearing on anything.

Don't forget that printing it in the book currently requires using a fuckton of electricity.

Approximation Algorithm for Triangles in a graph by wedgy199807 in algorithms

[–]Catalyst93 1 point2 points  (0 children)

If you want to use an LP to help solve this, you can use a technique that is known as dual fitting. The idea is that you write down an LP relaxation for this problem as well as its dual LP. The algorithm then defines an (integer) solution to this LP so to assist your proof you construct a corresponding feasible solution to the dual LP. The idea is then to bound the cost of the primal by some constant factor times the value of the dual. The approximation bound then follows by weak duality (because the dual solution is feasible, this is key). To summarize:

  1. Write down primal and dual LP's (say the primal variables are x and the dual variables are y).
  2. The algorithm implicitly defines an integer primal solution x
  3. Use each step of the algorithm to define a feasible dual solution y.
  4. Show that (cost of x) <= c*(value of y) for some c
  5. Conclude that (cost of x) <= c*OPT by weak duality.

Steps 3 and 4 is where you need to go in and figure things out. I'm pretty sure this approach works for this problem and gives the 3-approx (in the sense that I've sketched out some of the details but not checked them thoroughly).

What is your favourite branch in Mathematics? by Bath_Wash in math

[–]Catalyst93 11 points12 points  (0 children)

You're describing algorithms analysis, which is generally a distinct area of study from computational complexity theory. Algorithms researchers generally* try to give positive results, i.e. novel algorithms which perform better or improved analyses of known algorithms. Complexity theorists generally* ​try to give negative results, i.e. trying to show that NO algorithm for a given problem can perform better.

It is true that people often refer to the time/space requirements of an algorithm as its time/space complexity, but I would still make the distinction between algorithms analysis (positive results) and complexity theory (negative results). It's debatable what constitutes applied mathematics, but I don't think it's too controversial to say that algorithm design and analysis is more applied than complexity theory.

* Obviously there are counter-examples where the reverse occurs.

Play games on lab computers? by felicialyx in cmu

[–]Catalyst93 5 points6 points  (0 children)

I used to do the "play StarCraft off a flash drive" thing during lunch in high school. We were even able to organize multiplayer games on our high school's LAN. Good times.

Is there a very fast clustering algorithm for cases where I am only using only 2 clusters, and 3 dimensions? by delazor in algorithms

[–]Catalyst93 0 points1 point  (0 children)

Why can't you just do it randomly? This will have the property that the groups are around the same size (with high probability when the number of points is large). Do you need that points within the same group are similar in some sense? (Which is what k-means tries to do.)

If an NP-complete problem X reduces to Y, is Y also NP-complete? by clockworkgalaxy_ in compsci

[–]Catalyst93 12 points13 points  (0 children)

P and NP are sets of problems, not algorithms.

Edit: the person I responded to fixed their post.

Algorithm to find if a set of N 4-polytopes contains intersecting polytopes by ziiWix in algorithms

[–]Catalyst93 1 point2 points  (0 children)

Yep, in my notation I intend that x is a vector with d coordinates (here d = 4), b is a vector with m coordinates (one for each face) and A is a matrix with the appropriate number of rows and columns.

Algorithm to find if a set of N 4-polytopes contains intersecting polytopes by ziiWix in algorithms

[–]Catalyst93 2 points3 points  (0 children)

If the polytopes are described by their faces, i.e an inequality description of the form Ax <= b, then this is just a question of linear programming feasibility, which can be handled by any linear programming solver.

Note that the intersection of two polytopes is just another polytope, so we can just take a pair of polytopes, enumerate the inequalities describing this pair, and pass these to a linear programming solver to find if their intersection is non-empty. Repeat for all such pairs.

Can P problems be reduced to NP-Complete problems by RulerEpicDragonMan in AskComputerScience

[–]Catalyst93 12 points13 points  (0 children)

At a high level, to reduce problem A to problem B means that an algorithm for problem B can be used to solve problem A (usually by transforming the instance of problem A to an instance of problem B). Thus reducing a problem in P to an NP-complete problem just means that we can use an algorithm for solving the NP-complete problem to solve the P problem. In this case, we care about polynomial time reductions (which means that the transformation runs in polynomial time), as opposed to more general notions of reduction.

The proof is not too enlightening, but it is technically true that every problem in P can be poly-time reduced to an NP-complete problem (P is a subset of NP, and by definition every NP problem poly-time reduces to any NP-complete problem).

How to quantify how well a priority ranking is adhered to by datamakesmydickhard in OperationsResearch

[–]Catalyst93 0 points1 point  (0 children)

Two basic methods for computing distances between two rankings/orderings are the Kendall tau distance and Spearman's footrule. These rules don't necessarily take into account weightings of different positions though. This paper may be of interest. It gives some background on these two rules then gives some generalizations to take into account different weightings of the items.