Prove Canonical Coin Greedy Algorithm

I am trying to prove the following:

Show that for the following coin system S, the following greedy algorithm gives the optimal solution: Select the largest possible coin at each step until the amount of money has been obtained for any given value of money. S = {1,2,5,10,20,50,100,200}.

I do not know where to begin with this proof. I am thinking that mathematical induction could be used, but I’m not sure how I would perform that proof. This problem is very easy to prove for particular amounts of money, but I don’t have a clue how to prove it for any amount of money.

How to prove the optimization version problem (whose decision version is NP-complete) can be solved in poly-time iff P=NP?

I have proved the decision version of my problem be $ \mathcal{NP}$ -complete. And I know that if I can solve the optimization version in poly-time, then I can just to compare the obtained minimum (or maximum) with target value in decision version. Thus, the decision version can be solved in poly-time as well. Since the decision version is $ \mathcal{NP}$ -hard, so is the optimization version, i.e., the optimization version is $ \mathcal{NP}$ -hard.

My question is how to prove the converse direction: if the decision version can be solved in poly-time, can the optimization version be solved in poly-time as well?

I in advance thank you for any suggestions!

D has polynomial verifyer, the certificate for any word $w \in D$ is at most O(|log w|) space. Prove $D \in P$

Given that a language D has a polynomial verifier,

and given that for every word $ w \in D$ , the length of the certificate $ c$ is $ O(log|w|)$ space.

How can I prove that $ D\in P$ ?

My idea was to create a TM that takes a word w and runs the verifier on all the strings that are potentially a certificate but I don’t know how to claim that such a machine will stop? How can I limit the number of certificates my machine will generate?

$G = ({, , …})$ infinite turing recognizable language, prove $(L(M1) ∪ L(M2) ∪L(M_3).. )$ is itself turing recognizable?

Given that $ G = ({<M_1>, <M_2>, <M_3> …})$ is an infinite turing recognizable language, whose all inputs are descriptions of turing machines,

how can one prove that the union of all the languages recgonized by the turing machines in $ G$ : $ (L(M1) ∪ L(M2) ∪L(M_3).. )$ is itself turing recognizable?

I tried to prove it by building an enumerator for the language, using the fact that since $ G$ is turing recognizable it can be produced by one.

E' =  1. Initialize steps counter i=0 2. Run E, the enumerator of T, number of steps equal to i. 3. For every turning machine description M produced by E:    3.1 for every input word corresponding to 0 up to i (according to lexicographic order do:    3.2 Run M on the current input.    3.3 print if M accepts. 4. increase i by 1, and go back to step 2. 

Is this a correct approach? Is $ E’$ valid and producing the language as needed? If not, what am I doing wrong?

How did the Logic Theorist prove the Pons Asinorum?

I was reading about the Logic Theorist proving many of the Whitehead and Russell’s Principia‘s theorems. However, I cannot find any technical explanation on how the program proved those theorems and specifically what method did it use to solve the Pons Asinorum. I’m interested in understanding how “independent” it was in providing those proofs, mostly since it is celebrated as an “AI” program.

Help me prove to my boss there’s a better way to rapidly deploy applications!

I suck at programming; my historical training has been in Desktop Support/Server Administration, which I happen to excel at.

I’ve been tasked to convert 4 Microsoft Access Data Projects into JavaScript Web Applications. I’ve been in this new “Developer” position for about 2 years; I have completed 3 of the 4 applications.

I’m alone in a corner, miserable, and I’m coding in a vacuum. I have nobody to bounce ideas off of, or to learn from. The boss has established a framework that has existed for 20 years, and he “just wants me to do my job.”

We’re using JavaScript, MSSQL Stored Procedures, and a middle-man Web Service running Apache Tomcat. I’m almost blind as to what’s happening in the middle.

Here’s what I think I want to do: (note: we’re full-on admins and have a lot of flexibility with our platforms)

  1. I need a way to absolutely minimize modifications to 20-year-old Store Procedures. I absolutely hate writing code in Store Procedures. Our code is VERY database-heavy.
  2. I really wanted to learn .NET and C# instead of JavaScript
  3. I want to follow the MVC framework ideology, which I have not clue how to do
  4. I need a CSS ideology to follow for web applications. Bootstrap is too verbose, and too complicated. Remember, these are just forms based on old-school VBA Access Databases.
  5. I want to minimize the HTML & CSS that has to be written
  6. I have experience with ColdFusion. We need to keep this free, so I’m thinking about PHP. They have MVC frameworks, and supposedly connect directly to SQL.
  7. I’m also thinking about ASP.NET C# web applications, but I have no clue how it talks to SQL.
  8. I don’t know how to use GIT HUB to maintain DEV and PROD environments. Right now, I manually copy files to the webroot.

So, yeah, I’m more of a front-end guy.

It is so hard to maintain and deploy applications in this department; Our custom framework is old, and antiquated, and fights itself

Before I’m fired, quit, or move on, I really would like to prove to my boss there are better ways to do things:

What MVC framework to I research? Should I figure out PHP? OR, How does ASP .NET C# web apps connect to DBs? What CSS framework do I use for simple web forms?