Provide a polynomial time algorithm that decides whether or not the language recognized by some input DFA consists entirely of palindromes

Everything needed to know is in the question statement. I believe that the DFA has to be acyclic (meaning its language is finite), which can be checked in polynomial time. However, finding all paths from the start state to an accept state can run in exponential time in worst-case.

Do (some) Halflings have pointy ears like Elves?

I was under the impression that Halflings in D&D look pretty much like little humans.
But when I browse online concept art and fan art, I see a lot of Halfling images with Elf-like pointy ears… and it isn’t always clear which art is canonical and which isn’t.

So: In D&D, do Halflings (or some types of Halflings) have pointy ears akin to Elves?

Even if they generally don’t, are there exceptions?
If it depends on the D&D version or campaign setting, which ones exactly?

Undecidability of the language of PDAs that accept some ww

I’m trying to solve problem 5.33 from Sipser’s Introduction to the Theory of Computation,

"Consider the problem of determining whether a PDA accepts some string of the form $ \{ww|w\in \{0,1\}^โˆ—\}$ . Use the computation history method to show that this problem is undecidable."

I have an attempt at a solution but somehow I just feel kind of foggy on whether it’s correct and would appreciate anyone finding flaws in the solution.


For reference, I’m trying to mimic or adapt the solution given earlier in the chapter to

$ $ ALL_{CFG}=\{\langle G\rangle | G \text{ is a CFG and } L(G)=\Sigma^*\}$ $

Theorem: $ ALL_{CFG}$ is undecidable.

The proof given there reduces from $ A_{TM}$ the decision problem of checking whether a TM called $ M$ accepts a string called $ w$ . It does so by, for any fixed $ M,w$ , constructing a CFG $ G$ which produces all possible strings if and only if $ M$ accepts $ w$ . In particular $ G$ is the CFG which generates all the strings that are NOT accepting histories for $ M$ on $ w$ .

It then proceeds to show how to build such a $ G$ . For the purposes of the problem I’m asking about, I can just accept that this is possible.


Also for reference, there is this answer to a similar question on here: https://cs.stackexchange.com/q/6629

I particularly want to follow the textbook’s guidance in order to practice this method of using a computation history, so I’m ignoring the first answer to the problem. However, I don’t understand the answer given for computation histories. The CFG that he gives (or equivalent PDA) doesn’t seem to generate strings with at least one $ v!v$ if and only if $ M$ accepts $ w$ . Supposing $ M$ accepts $ w$ I don’t see a reason why $ C_0\#…\#m(C_{2n})\#C_f = C_1’\#…\#m(C_n’)$ .


My solution is, like in the book’s solution for $ ALL_{CFG}$ , to try to use $ M$ and $ w$ to build a CFG such that $ M$ accepts $ w$ if and only if $ G$ generates some string of the form $ vv$ . In particular $ G$ is the grammar defined by the PDA $ D$ which on input $ x$ checks the first half to see if it’s an accepting history of $ M$ for $ w$ , and then checks the second half to see if it equals the first half. I believe each of these are things any PDA can do, and once built, $ G$ will have the properties promised earlier. Am I making any mistake here?

PostgreSQL ignores implicit casts in some situations

The setup:

CREATE TYPE MY_ENUM AS ENUM ('a', 'b'); CREATE CAST (CHARACTER VARYING AS MY_ENUM) WITH INOUT AS IMPLICIT; CREATE TABLE t (x MY_ENUM); INSERT INTO t VALUES ('a'::MY_ENUM), ('b'::MY_ENUM); 

These work just fine, as expected:

INSERT INTO t VALUES ('a'); SELECT * FROM t WHERE x = 'a'; 

But these don’t:

PREPARE p(CHARACTER VARYING) AS SELECT * FROM t WHERE x = $  1; ;; error: operator does not exist: my_enum = character varying  CREATE FUNCTION f(ix CHARACTER VARYING, OUT ox MY_ENUM) AS $  $       SELECT * FROM t WHERE x = ix $  $   LANGUAGE sql; ;; error: operator does not exist: my_enum = character varying  CREATE FUNCTION f(ix CHARACTER VARYING) RETURNS VOID AS $  $   BEGIN     SELECT * FROM t WHERE input_type = ix; END; $  $   LANGUAGE plpgsql;  SELECT f('piano'); ;; error: operator does not exist: my_enum = character varying 

According to the documentation, "If the cast is marked AS IMPLICIT then it can be invoked implicitly in any context, whether assignment or internally in an expression."

So why the errors?

Does $20n$ belong to $O(n^{1-\epsilon})$ for some $\epsilon > 0$?

I am quite new to master theorem and I would like to ask the following question for $ $ ๐‘‡(๐‘›)=4๐‘‡(๐‘›/4)+20๐‘›.$ $ If there is a constant value like $ 20n$ does it affect the equation?

Would the equation look something like this for test case 1:

Is $ f(n) = 20n \in O(n^{log_ba-\epsilon}) \in O(n^{\log_4^4-\epsilon}) \in O(n^{1-\epsilon})$ for some $ \epsilon > 0$ ?

Order posts alphabetically with numbers but some of the posts has numbers in the title

I have this query:

 $  args = array(        'post_type' => 'alerts',     'post_status' => 'publish',     'posts_per_page' => -1,      'orderby' => 'post_title',      'order' => 'ASC', );  $  alerts_loop = new WP_Query( $  args );  

The problem is that the order breaks in certain point. look at the imagen any ideas why it breaks. I have used:

'orderby' => 'title', 'suppress_filters' => true, 'ignore_sticky_posts' => true 

enter image description here

Some Strange results from MMA and Matlab

Recently I am repeating a numerical discrete Fourier transform. Since this problem is related to a real experiment.

So the authors use some complex functions to fit the results.

Below formula is the Laplace transform of the waiting time PDF:

PHI30EQ[u_] := (u - 52/15*u^2 - 16/15*u^3)*Exp[u]*     BesselK[1, u] + (7*u + 4*u^2 + 16/15*u^3)*Exp[u]*     BesselK[0, u] - (2*u/Pi)^(1/2)*16/5;  Table[N[PHI30EQ[u], 30], {u, 0, 0.1, 0.001}]  

The aim is to calculate the above formula numerically. The following information can be ignored.

The results given by MMA are:

Indeterminate,0.966028,0.96976,0.977704,0.987383,0.997947,1.00901,1.02035,1.03185,1.04345,1.05507,1.0667,1.0783,1.08987,1.10138,1.11284,1.12423,1.13555,1.1468,1.15798,1.16908,1.18011,1.19106,1.20193,1.21274,1.22346,1.23412,1.2447,1.25521,1.26565,1.27602,1.28632,1.29656,1.30672,1.31683,1.32687,1.33684,1.34676,1.35661,1.3664,1.37614,1.38581,1.39543,1.405,1.41451,1.42396,1.43336,1.44271,1.45201,1.46126,1.47046,1.47961,1.48871,1.49776,1.50677,1.51573,1.52464,1.53351,1.54234,1.55112,1.55986,1.56856,1.57721,1.58583,1.59441,1.60294,1.61144,1.6199,1.62832,1.6367,1.64504,1.65335,1.66162,1.66986,1.67806,1.68623,1.69436,1.70246,1.71052,1.71856,1.72656,1.73452,1.74246,1.75036,1.75824,1.76608,1.77389,1.78167,1.78942,1.79715,1.80484,1.81251,1.82014,1.82775,1.83533,1.84289,1.85041,1.85791,1.86539,1.87283,1.88026 

If you see the above result carefully, you will find the result is wrong. So I use the Matlab to calculate it again. The results are the same.

We can see that both MMA and Matlab did not give a good answer.

Let us expand the first formula at small $ u$

Series[(u - 52/15*u^2 - 16/15*u^3)*Exp[u]*    BesselK[1, u] + (7*u + 4*u^2 + 16/15*u^3)*Exp[u]*    BesselK[0, u] - (2*u/Pi)^(1/2)*16/5, {u, 0, 10}] 

Until now, I found two types of result.

Result A:

 1 - 16/5 Sqrt[2/\[Pi]] Sqrt[u] +   1/15 (-37 - 105 EulerGamma + 105 Log[2] - 105 Log[u]) u +   1/60 (-257 - 630 EulerGamma + 630 Log[2] - 630 Log[u]) u^2 +   1/60 (-16 - 693 EulerGamma + 693 Log[2] - 693 Log[u]) u^3 + ((7519 -      25740 EulerGamma + 25740 Log[2] -      25740 Log[u]) u^4)/2880 + ((3275 - 6006 EulerGamma +      6006 Log[2] - 6006 Log[u]) u^5)/1152 + ((52483 -      69615 EulerGamma + 69615 Log[2] -      69615 Log[u]) u^6)/28800 + ((2082133 - 2238390 EulerGamma +      2238390 Log[2] - 2238390 Log[u]) u^7)/2419200 + ((25195103 -      23279256 EulerGamma + 23279256 Log[2] -      23279256 Log[u]) u^8)/77414400 + ((95727847 -      78738660 EulerGamma + 78738660 Log[2] -      78738660 Log[u]) u^9)/928972800 + ((156692681 -      117417300 EulerGamma + 117417300 Log[2] -      117417300 Log[u]) u^10)/5573836800 

Resut B:

(1 - 16/5 Sqrt[2 \[Pi]] Sqrt[u] +    1/15 (-37 - 105 EulerGamma + 105 Log[2] - 105 Log[u]) u +    1/60 (-257 - 630 EulerGamma + 630 Log[2] - 630 Log[u]) u^2 +    1/60 (-16 - 693 EulerGamma + 693 Log[2] -       693 Log[u]) u^3 + ((7519 - 25740 EulerGamma + 25740 Log[2] -       25740 Log[u]) u^4)/   2880 + ((3275 - 6006 EulerGamma + 6006 Log[2] - 6006 Log[u]) u^5)/   1152 + ((52483 - 69615 EulerGamma + 69615 Log[2] -       69615 Log[u]) u^6)/   28800 + ((2082133 - 2238390 EulerGamma + 2238390 Log[2] -       2238390 Log[u]) u^7)/   2419200 + ((25195103 - 23279256 EulerGamma + 23279256 Log[2] -       23279256 Log[u]) u^8)/   77414400 + ((95727847 - 78738660 EulerGamma + 78738660 Log[2] -       78738660 Log[u]) u^9)/   928972800 + ((156692681 - 117417300 EulerGamma + 117417300 Log[2] -       117417300 Log[u]) u^10)/5573836800) 

You can check that one of them is wrong by checking the value at a specific $ u$ and MMA did not give a valid result for the first formula, i.e.,

PHI30EQ[u_] := (u - 52/15*u^2 - 16/15*u^3)*Exp[u]*     BesselK[1, u] + (7*u + 4*u^2 + 16/15*u^3)*Exp[u]*     BesselK[0, u] - (2*u/Pi)^(1/2)*16/5;  Table[N[PHI30EQ[u], 30], {u, 0, 0.1, 0.001}] 

I believe the correct result is

Indeterminate,0.793116,0.725224,0.67821,0.641557,0.611302,0.585457,0.562865,0.542783,0.524707,0.508273,0.493211,0.479315,0.466422,0.454402,0.44315,0.432578,0.422613,0.413194,0.404268,0.39579,0.387721,0.380025,0.372674,0.36564,0.3589,0.352432,0.346218,0.340241,0.334485,0.328937,0.323584,0.318414,0.313416,0.308581,0.303901,0.299366,0.294969,0.290704,0.286564,0.282542,0.278633,0.274832,0.271134,0.267535,0.264029,0.260614,0.257284,0.254038,0.250871,0.24778,0.244762,0.241815,0.238936,0.236122,0.233371,0.23068,0.228048,0.225473,0.222952,0.220484,0.218066,0.215698,0.213378,0.211104,0.208874,0.206688,0.204544,0.202441,0.200377,0.198351,0.196362,0.19441,0.192493,0.19061,0.18876,0.186942,0.185156,0.1834,0.181675,0.179978,0.178309,0.176667,0.175053,0.173464,0.171901,0.170363,0.168849,0.167359,0.165892,0.164447,0.163024,0.161623,0.160242,0.158883,0.157543,0.156222,0.154921,0.153639,0.152375,0.151129 

A lot of my windows drivers have expired dates for the certificate, and some are not even signed, is this normal? [migrated]

I just gathered all the drivers in my system32/drivers folder and checked their certificate (my windows is updated and its a windows 10 x64)

But i found that so many of them have expired certificate! and some are not even signed! (pictures included)

so my questions are :

  1. Is this normal? if not, what should i do? and if not, then why are the expiration date expired?

  2. How are these drivers are able to get loaded when they have no certificate or its expired? my system is W10 x64 with secure boot enabled, i thought you can only load signed drivers with valid certificates?

  3. What is the role of these countersignatures put in simply? i tried reading MSDN and other websites but couldn’t understand whats the need of this?

here are some examples

WindowsTrustedRTProxy.sys (countersignature is also expired) :

enter image description here

winusb.sys (no certificate) :

enter image description here