Hacker Newsnew | past | comments | ask | show | jobs | submit | scscsc's commentslogin

Do you also think that primary school students should not be taught, say, multiplication? Because they can, of course, use a calculator. No need to ask them what 3 times 4 is.


For your convenience, here is the list of NP-complete problems where "AI" works better than the state of the art in the worst case:.


AI + classical algorithms is my sweet daydream. Trained heuristics (even better domain specific ones), deployed for classical A*, ILP families, focal search, etc etc.

That is going to be really amazing.


It is happening. There are papers on deep learning to improve the variable choice in branch-and-bound, etc


Yeah my first exposure was from Marco Pavone's lab, on ML heuristics for MICP in the context of a cubical tumbling robot, IIRC. Really cool stuff.


Even solving large linear systems would already be amazing. But a SAT solver would be nice too :)


I misunderstand your comment. We have those solvers. I'm suggesting AI would plug into existing solvers. This is a ripe area for research.


Thank you for that. I needed the laugh :-)


For those of you who didn't get the joke here.

(S)ETH is a bit of a bummer if you only consider the dominate term in big-O, for the general case.

https://web.stanford.edu/class/cs354/scribe/lecture17.pdf


Probably soon AI will be able to find improvements to most of them? Like using AI to do search in algorithm space


For all we know, some of the current best (still exponential) algorthms were guided by AI. If a mathematician solves a problem using mathematica, they don't usually write in the paper what tools they used.


Having some experience in this field, I can say that all of the tools presented on the webpage are very lightweight static analyzers. They are all based on processing the syntax tree and they which will detect things like uninitialized variables, or do style checks.

"Real" static analyzers, which are more useful, are based on symbolic execution and abstract interpretation and they will uncover more interesting classes of errors, like double frees, out of bounds array access, etc.

Note that all analyzers will have FPs and FNs, because the underlying problem is uncomputable.

The best open source "real" static analyzer overall for C++ is the Clang static analyzer. There are many commercial analyzers available, and most C++ shops will use one or more of these.


clang-tidy is mentioned in the blog post, and what I personally use - it does do control flow and dataflow analysis to find double frees or missing frees from any possible program trace (though doesn't do any interprocedural analysis, for hopefully obvious reasons).


AFAIK clang-tidy is a superset of clang static analyzer nowadays.

E.g. quote from the documentation page (https://clang.llvm.org/extra/clang-tidy/):

    clang-tidy has its own checks and can also run Clang Static Analyzer checks.


Does anyone know anything about the affiliation of the first author, "Fgemm SPA"?


Fgemm SpA, coming soon.


It does not stop it, but certainly reduces it.

What are the dozen ways?


Not the OP, but here's half a dozen off the top of my head:

* WiFi mesh

* Cellular/LTE

* Satellite internet

* LoRa

* Bluetooth

* Ham radio sending data packets

* Walkie-talky voice communication with a few friends outside the school (probably not what the OP meant by "wireless network" but I think it's technically correct ;)


> Walkie-talky voice communication

In Brazil there's been a fairly sophisticated scheme based on that. It proceeded more or less as follows:

1) the "service provider" hired some highly specialized "candidates" who would enroll for the exam and take it

2) these fake-candidates would then quickly solve the questions, focusing only the few subject matters they were specialized in. One is usually not allowed to leave the exam room carrying the printed materials, unless they accept to wait for a specified amount of time (1 hour before the final time or so, IIRC). But these guys were able to memorize the answers and, then, simply left.

3) after leaving the room, the fake-candidates would meet a team in a car nearby. They had a radio transmitter there, and started to broadcast the answers.

4) the cheaters who hired the "service" would carry a radio receiver with a tiny earpiece implanted under their skins. They would then listen to the answers and write them down

I don't remember how did they find that out. I believe it happened when an exam proctor suspected about a candidate answering the questions too quickly.


they're probably all some version of a mesh network


I have just seen someone using such a phone.

It looks good, just a tiny bit bulky.

Not sure on how it will do long term.

My OnePlus has been serving me well for more than 3 years now.


some people dont mind a tiny bit of bulk, some people dont mind kids mining cobalt barehanded and getting cancer in the process


This is no argument. Both of them have batteries and both pose the same risks.


This is no argument. Both cats and lions have legs and both pose the same risk.


> Not sure on how it will do long term.

Haven't they been around long enough now to answer that?


Note that the title is misleading.

The issue is lack of seatbelt pre-tensioning, not the size of car.

I am surprised manufacturers are not required to have pretensioners.


> The issue is lack of seatbelt pre-tensioning, not the size of car.

Also, your face is hitting something other than an airbag. The size of the car is probably somewhat to blame - larger cars have more space for your head to move before smashing into something.

Should we be putting airbags into the back of the front seats now? How much would that cost? You'd think that much of the electronics have already been taken care of due to the presence of the other airbags. Add some weight sensors in the seats, something to detect if the LATCH system is in use, etc. Would this be a few hundred dollars, or much much more?


To those wondering if there will be a successful "marriage" between popular incarnations of AI, like ChatGPT, and FM: no, at least not in the sense you would expect.

Sure, ChatGPT will successfully manage to find formal proofs that have been done before.

But synthesising proofs from scratch is NP-complete for the simplest proofs (or worse for more interesting cases), and LLMs are simply not clever enough to do it (except in cases where the proof has been seen before).

It could be possible to integrate an SMT solver with a LLM to make this work, but the core difficulty of the FM task will then be solved by the SMT solver.


There is ongoing work trying to get that marriage to work


I would like to point out that such a resource is useful for reference purposes (only).

If you want to really understand an algorithm/a data structure, you have got to read it up and get your hands dirty and implement it yourself. There is no way around this.

This is a bit like taking notes in classes. The notes themselves are (nowadays mostly) almost worthless, with easy access to textbooks and other resources. The fact of taking the notes is what actually counts.


Sometimes you don’t want to understand it or go through “find all bugs you’ve introduced again” cycle. In that case, off-the-shelf or abstract solution is much better.


> implement it yourself ...

... in C or something that allows you to get to the nitty gritty details.

Or if the DS are immutable, do it in Haskell or similar.


Could anyone in the know explain how "shorting" works?


When you buy a stock, you pay money and someone else gives you a stock. Once you have it, you can hold it for as long as you want. Its value can go up or down. When you sell, you get money, which might be less or more than what you paid. If the value goes to zero, you can no longer sell and you will never get any money.

When you short a stock, you are basically selling a stock you don't have. Thus you get money and owe someone else a stock (in practice what happens is someone else unknowingly gives you a stock for free and then you sell it, and they get an IOU for a share of the stock later; but let's not worry too much about the mechanics). Once you have this IOU, you can hold on. The value of the liability associated with the IOU can go up or down. If it goes down, then when you discharge that liability by buying the share you owe, you will pay less than you were paid for the short, thus making a profit. If it goes up, then you will pay more and thus lose money. One risk with a short is that your liability is unbounded. In a traditional stock purchase, the worst that can happen is that you lose the money you put in. In a short sale, you can lose many multiples of the money you put in if the stock does very well. Under a few circumstances, the IOU can be called, forcing you to prove that you have the money to buy a share; for instance, if you were to short $1,000,000 in shares and the share price triples, you owe $3,000,000.

To summarize: when you buy a stock, it's because you think it will be worth more later (again, let's set aside dividends and other things). When you short a stock, it's because you think it will be worth less later.

The reason shorting is permitted is because in general, there is a belief (mistaken or not), that additional liquidity -- more trading -- benefits everyone involved in a market by reducing the spread between prices for buying and selling; additionally, shorting makes it possible to hedge your exposure to a sector (i.e. to trade off some upside in a sector with some corresponding downside and vice versa).


Thanks for the explanation! What happens when someone shorts a stock and then the company goes under? In this case of SVB, you short a stock, company gets taken by FDIC, trading is halted and I'm assuming the company will be sold/dissolved? So what happens with the shorts?

Edit: Answered already by someone in other thread https://news.ycombinator.com/item?id=35107107


At that point, the stock is worthless and the borrower doesn't have to return it. They keep all of the money from the initial sale.


It's a bit more complicated.

Companies are often in limbo for a long time before they officially go under.

The borrower has to keep paying borrow costs during that time. Which makes shorting companies that go down rather risky.


> (in practice what happens is someone else unknowingly gives you a stock for free and then you sell it, and they get an IOU for a share of the stock later; but let's not worry too much about the mechanics)

That's a mis-characterisation. What makes you think the counterparty lends you the stock unknowingly?

> The reason shorting is permitted is because [...]

You forgot the most important reasons:

First, why forbid voluntary transactions between people? Stock lending is an activity between consenting adults.

Second, short selling is a way to finance muckracking and investigations. Short sellers are the only people with an incentive to burst manias. They are an important mechanism for the market to regulate itself.


> someone else unknowingly gives you a stock for free and then you sell it

Lends it for a fee, right?


Also not 'unknowingly'.


This is the clearest explanation I've ever read of this. Thank you.


Alas, it's also not quite right.

Eg 'in practice what happens is someone else unknowingly gives you a stock for free':

Someone else willingly and _knowingly_ loans you the stock, and _charges_ borrow costs. As a private investor you can participate in stock lending, just check with your broker. Index funds are often more than happy to loan out their shares, partially because it's one of the few ways they have to make extra money.

(Also maybe partially because it helps offset their impact on the market. If a new company makes it into the S&P 500 and all of a sudden index funds have to own 20% of that company, you might expect prices to go up in _anticipation_, ie before the index fund can buy. But if at the same time the same 20% of that company's stock becomes available for loan and thus short-selling, that might help counteract this move.)

See good old Wikipedia https://en.wikipedia.org/wiki/Short_(finance) for more.


A simple explanation is that you borrow a certain number of stocks, sell it, and re-buy at some point in the future (at a lower price hopefully) to return the number of stocks you borrowed.

Imagine you think widgets that are worth $1 today are going to be worth $0.50 tomorrow. You say to me, "Hey jpdb, can I borrow 100 widgets and give them back to you tomorrow?" I say sure and you turn around and sell those widgets. Tomorrow, we meet up and you take your $100 and buy 100 widgets for the new price of $0.50 each. You return the 100 widgets you borrowed and you now have $50 in your pocket. In this example you have "shorted" widgets.


You borrow some stock. You sell it. You wait a while. You buy the same stock again. You give it back.

It's very similar to when you take a loan:

You borrow some money. You 'sell' the money for goods and services. You wait a while. You acquire some money again. You give the money back.

In both cases, you pay some interest while the loan is outstanding. (In both cases, you typically pay the interest with money. Instead of with small pieces of stock.)

As always Wikipedia is worth a look: https://en.wikipedia.org/wiki/Short_(finance)


You literally borrow someone else’s stock and sell it. You now owe them the stock which effectively leaves you with a negative position. Eventually you have give them the stock back which will require you to buy it. If the price has gone down you make money.


A short seller borrows shares from a shareholder - a bank, institutional investment group, or an individual who makes them available in return for interest payments - and sells them on the market at the current price. They hope to return the shares by buying them back at a lower price later and pocketing the difference.


Short selling on its own is trading on the hope that a stock goes down by borrowing shares from someone who owns them and immediately selling them. Your broker will match you to an owner who is willing to lend the shares if there are any available. To exit the trade, you buy back the shares you borrowed.

Your profit from this trade is the stock's price when you entered the trade minus the price when you buy it back (i.e. you want to sell high and then buy low), less any financing costs from borrowing the shares.


The answers here are great, but I would also direct you to a more complete picture here: https://www.investopedia.com/terms/s/shortselling.asp

Shoring is, financially-speaking, quite complicated and can be very opaque. It's also fundamentally different than longing (not merely the "opposite").


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: