|
Plorkyeran posted:there was pretty clearly someone working on vs who made it their pet project to make all sorts of things hotkeyable because most of those sorts of things are doable with the keyboard. probably not changing the width of the memory window. other way around. it's the result of a top-down mandate to invest in accessibility.
|
# ? May 23, 2020 03:05 |
|
|
# ? May 17, 2024 02:49 |
|
redleader posted:love "periodic' tables that miss the point entirely the one for rust types is quite good 'cause it's actually, yknow, a table unrelated: can somebody explain the difference between prolog and SAT/SMT solvers to me? They seem really similar from a user's perspective ("specify an NP-hard logic problem, wait an hour for a mysterious algorithm to solve it") but they seem to be entirely separate fields. i can't find anything connecting them aside from some blog posts implementing SMT solvers in prolog
|
# ? May 23, 2020 03:22 |
|
it's like poetry, it rhymes edit: this was about aperiodic tables
|
# ? May 23, 2020 05:29 |
|
animist posted:unrelated: can somebody explain the difference between prolog and SAT/SMT solvers to me? They seem really similar from a user's perspective ("specify an NP-hard logic problem, wait an hour for a mysterious algorithm to solve it") but they seem to be entirely separate fields. i can't find anything connecting them aside from some blog posts implementing SMT solvers in prolog the core evaluation mechanism for prolog is a solver for a kind of Horn formulas, and boolean Horn formulas are solvable in linear time by a simple propagation procedure (Horn clauses have at most one unnegated term, which can be abused to by depth-first search on a sequence of goal clauses try to satisfy the formula, helped by the fact that you always start by unifying your goal to the unnegated term for the clauses in order). the reason prolog, as a general programming language, can nonetheless encode NP-complete and undecidable problems is due to it not using *Boolean* Horn formulas, instead it has complex terms (trees of symbols) which are built up by unification as part of that propagation (as well, of course, as a bunch of functions which do extra stuff beyond the simple search). if you write a "sufficiently pure" prolog program where no variable is ever bound to anything but the symbols 'true' and 'false' it will always run in linear time. SAT are general boolean formulas, we do not have the nice horn clause property, so it is NP-complete to solve these in themselves. you'd solve one in prolog by having a variable bound to a complex term which describes a mapping from the variables in the underlying sat formulas to 'true' and 'false' (well, something amounting to that). this prolog program may at once use exponential time (as we'd expect solving an NP-complete problem) since the linear horn propagation may now (through unification) rebind the variable to each of its exponentially many values. SMT related closely enough to this to be potentially confusing, it is a technique to use SAT solver to solve formulas with more general predicates and/or quantification. it basically operates by having a SAT solver run away setting its booleans on predicates, where SMT part breaks in adding facts which are consequences of the SAT solvers current state, but which the SAT solver cannot derive itself within its simple boolean view of things (e.g. if the SAT solver is on a path where it thinks that the "variables" 'x<y' and 'y<z' are both true the SMT procedure is prepared to leap in and assert that the "variable" 'z<x' is false). one can take the view that the term unification part of prolog is a kind of like SMT on top of its Horn solver, the Horn solver puttering along and just asserting 'unify(some mess of a term, another mess of a term)', and backtracking when the "SMT" says that it has stated a contradictory series of unifications. e: to actually cover the practical too: you'd never encode a linear-time algorithm as a SAT formula and hand it over to a SAT/SMT solver, since you are liable to have it run in the exponential time required by the logic involved. in prolog you can write efficient algorithms just fine. in the other direction you'd never solve an NP-complete problem in Prolog (unless you have some custom heuristics which make it make sense) as a SAT/SMT solver will almost always be faster. Cybernetic Vermin fucked around with this message at 11:27 on May 23, 2020 |
# ? May 23, 2020 09:41 |
|
anyone say bool poo poo yet
|
# ? May 23, 2020 10:52 |
|
Cybernetic Vermin posted:the core evaluation mechanism for prolog is a solver for a kind of Horn formulas, and boolean Horn formulas are solvable in linear time by a simple propagation procedure (Horn clauses have at most one unnegated term, which can be abused to by depth-first search on a sequence of goal clauses try to satisfy the formula, helped by the fact that you always start by unifying your goal to the unnegated term for the clauses in order). hello effort-poster. i will read and digest what you have written here i wish to ask, do you know about alloy and if so what do you think of its "make rules in set theory and then search for instances and counterexamples" functionality?
|
# ? May 23, 2020 16:27 |
|
prisoner of waffles posted:hello effort-poster. i will read and digest what you have written here nah, i've never found myself very far from SAT myself. do beware also that i am not a very deep expert on these matters, so there may be mistakes lurking in the above.
|
# ? May 23, 2020 16:38 |
|
ty for the detailed answer, this is really helpful. i get the shape of these things more now, i think.
|
# ? May 23, 2020 19:07 |
|
Alloy, and formal verification in general, is great. It forces you to really write down and state all of your assumptions. If you don't, then it will find weird-rear end counterexamples, and show you just how wrong you are.
|
# ? May 23, 2020 20:13 |
|
alloy appears to be a javascript framework?
|
# ? May 24, 2020 00:15 |
|
Bloody posted:alloy appears to be a javascript framework?
|
# ? May 24, 2020 00:23 |
|
alloy is unusually poorly named for internet searching
|
# ? May 24, 2020 02:28 |
|
Bloody posted:alloy is unusually poorly named for internet searching this one https://alloytools.org/ most of the available presentations of it are papers or tutorials or a book; this https://alloy.readthedocs.io/en/latest/ is iiii thiiink the official online reference but like, the idea of it is novel enough that it makes more sense to learn about it from a book or scholarly paper rather than just being like, "gieb me language spec plox"
|
# ? May 24, 2020 02:35 |
|
speaking of javascript
|
# ? Jun 9, 2020 08:11 |
|
lmao of course node modules all say “please like and subscribe”
|
# ? Jun 9, 2020 09:39 |
|
Truga posted:speaking of javascript there is, of course, also "is-even" by the same author, which imports is-odd and then returns the negation of that. somehow they needed four releases to get to that point e: it has >4M downloads Bonfire Lit fucked around with this message at 10:34 on Jun 9, 2020 |
# ? Jun 9, 2020 10:31 |
|
Bonfire Lit posted:there is, of course, also "is-even" by the same author, which imports is-odd and then returns the negation of that. somehow they needed four releases to get to that point don't forget that it has a dependency on "is-number" by the same author. otoh what is a number is a pretty deep question in javascript land.
|
# ? Jun 9, 2020 12:40 |
|
Cybernetic Vermin posted:don't forget that it has a dependency on "is-number" by the same author. dependency hell is a fun vacation spot for the javascript programmer
|
# ? Jun 9, 2020 14:13 |
|
lol https://www.npmjs.com/package/is-is-odd
|
# ? Jun 9, 2020 14:38 |
|
step 1: write a trivial package step 2: write more packages which intricately depend upon it step 3: submit pull requests to every open source project you can find which introduce your packages as dependencies step 4: wait step 5: prominently display your status as the author of the most-downloaded package on npm on your resume it's more grift and malice than idiocy, hth
|
# ? Jun 9, 2020 14:53 |
|
Don't forget to reject pull requests, then incorporate their changes yourself, while also making idiotic mistakes, and do both in one commit, despite being unrelated: https://github.com/jonschlinkert/is-odd/commit/de4ce1b35c905f0e029e93ef171775c40e24f69d
|
# ? Jun 9, 2020 15:09 |
|
CPColin posted:Don't forget to reject pull requests, then incorporate their changes yourself, while also making idiotic mistakes, and do both in one commit, despite being unrelated: from that guys profile: "🤔 Trying to stay in the best branch of the wave function." gently caress off
|
# ? Jun 9, 2020 15:34 |
|
Truga posted:speaking of javascript
|
# ? Jun 9, 2020 16:56 |
|
the weird thing is that there's more than one person with jon schlinkert's gimmick, who all have competing "is-odd" packages and all fight to the death over it
|
# ? Jun 9, 2020 17:16 |
|
Suspicious Dish posted:the weird thing is that there's more than one person with jon schlinkert's gimmick, who all have competing "is-odd" packages and all fight to the death over it as someone who has ever searched npm, this is the least surprising thing "node package quality inspector" should be a highly-paid job title
|
# ? Jun 9, 2020 17:23 |
|
code:
|
# ? Jun 9, 2020 17:38 |
|
code:
|
# ? Jun 9, 2020 19:23 |
|
Suspicious Dish posted:the weird thing is that there's more than one person with jon schlinkert's gimmick, who all have competing "is-odd" packages and all fight to the death over it
|
# ? Jun 9, 2020 20:01 |
|
Asleep Style posted:from that guys profile: The Javascript man has other interesting opinions, too: Well actually, the police wearing cameras at all times would be very cool & good, but I'm guessing that's not where he wanted to go with this.
|
# ? Jun 10, 2020 09:09 |
|
Of course he has
|
# ? Jun 10, 2020 09:17 |
|
quote:works with strings and numbers
|
# ? Jun 11, 2020 00:13 |
|
Athas posted:The Javascript man has other interesting opinions, too: is this the effect javascript has on people or do terrible people just choose javascript?
|
# ? Jun 11, 2020 00:15 |
|
yes
|
# ? Jun 11, 2020 21:25 |
|
Shaggar posted:is this the effect javascript has on people or do terrible people just choose javascript? two things can be true
|
# ? Jun 12, 2020 19:06 |
|
Truga posted:speaking of javascript Jon Schlinkert is a disgrace to Jon's everywhere
|
# ? Jun 14, 2020 04:37 |
|
code:
|
# ? Jun 14, 2020 07:21 |
|
you forgot a semicolon
|
# ? Jun 15, 2020 07:01 |
|
say no more famcode:
|
# ? Jun 15, 2020 08:56 |
|
Internet Janitor posted:say no more fam
|
# ? Jun 18, 2020 12:46 |
|
|
# ? May 17, 2024 02:49 |
|
Bored Online posted:help i really really really really really really like go and i want you to want go like i want go too
|
# ? Jun 18, 2020 23:09 |