Infimum
2018-03-20 08:06:24

From Wikipedia, the free encyclopedia

In mathematics, the infimum (abbreviated inf; plural infima) of a subset S of a partially ordered set T is the greatest element in T that is less than or equal to all elements of S, if such an element exists. Consequently, the term greatest lower bound (abbreviated as GLB) is also commonly used.

Formal definition

A lower bound of a subset S of a partially ordered set (P,≤) is an element a of P such that

a ≤ x for all x in S.

A lower bound a of S is called an infimum (or greatest lower bound, or meet) of S if

for all lower bounds y of S in P, y ≤ a (a is larger than any other lower bound).

최대, 최소와의 관련성을 따지자면 꼭 set 에 포함되지 않아도 된다.

The infimum of a subset S of a partially ordered set P, assuming it exists, does not necessarily belong to S.

예를들면,

Infima

The infimum of the set of numbers {2,3,4} is 2. The number 1 is a lower bound, but not the greatest lower bound, and hence not the infimum.

More generally, if a set has a smallest element, then the smallest element is the infimum for the set. In this case, it is also called the minimum of the set.

inf{1,2,3,...} = 1

inf{x∈R|0

inf{x∈Q|x^3 > 2} = cube root 2

inf{(-1)^n + 1/n | n = 1,2,3, ... } = -1

if X_n is a decresing sequence with limit x, then inf X_n = X.

▼ more
맨날 내려갔다가 올라왔는데;;
2018-02-06 11:56:54

recursive 로 짜면 편하긴 한데 뭔가 이상하다고 느꼈었음;;

가장 큰 path, 가장 작은 path 찾는 간단한 DP

//Thanks to shfshfdl

//dp w/o recursive fuction

#include <iostream>

#define DEBUG_KML 0

#define MIN_KML(a, b) (((a) < (b)) ? (a) : (b))

#define MAX_KML(a, b) (((a) > (b)) ? (a) : (b))

using namespace std;

int main() {

#ifdef DEBUG_KML

freopen("sample_input.txt", "r", stdin);

#endif

int N;

cin >> N;

int min_dp[3] = { 0,0,0 };

int max_dp[3] = { 0,0,0 };

int i;

for (i = 0; i < N; i++) {

char board[3];

cin >> board[0] >> board[1] >> board[2];

board[0] -= '0'; board[1] -= '0'; board[2] -= '0';

int cur[3];

cur[0] = MIN_KML(min_dp[0], min_dp[1]) + board[0]; // left

cur[1] = MIN_KML(MIN_KML(min_dp[0], min_dp[1]), min_dp[2]) + board[1]; // center

cur[2] = MIN_KML(min_dp[1], min_dp[2]) + board[2]; // right

min_dp[0] = cur[0];

min_dp[1] = cur[1];

min_dp[2] = cur[2];

cur[0] = MAX_KML(max_dp[0], max_dp[1]) + board[0]; // left

cur[1] = MAX_KML(MAX_KML(max_dp[0], max_dp[1]), max_dp[2]) + board[1]; // center

cur[2] = MAX_KML(max_dp[1], max_dp[2]) + board[2]; // right

max_dp[0] = cur[0];

max_dp[1] = cur[1];

max_dp[2] = cur[2];

}

max_dp[0] = MAX_KML(max_dp[1], max_dp[0]);

max_dp[0] = MAX_KML(max_dp[2], max_dp[0]);

min_dp[0] = MIN_KML(min_dp[1], min_dp[0]);

min_dp[0] = MIN_KML(min_dp[2], min_dp[0]);

//print out results

cout << max_dp[0] << " " << min_dp[0] << endl;

return 0;

}

▼ more
암기해요
2018-01-28 20:51:27

기초수식은 이랬나 저랬나 하지 말고 그냥 암기..

cross entropy

API 도 암기

tf.Variable(tf.random_uniform([1], -1.0, 1.0))

tf.placeholder(tf.float32, name = "X")

tf.reduce_mean(-tf.reduce_sum(Y * tf.log(hat_y), axis = 1)) # 행으로 더 하는 reduce_sum 그리고 그들의 평균을 내는 reduce_mean

도구도 암기

pycharm remote 할때는

1. run 설정, 환경변수는 그냥 python 에 저장해두고 쓸 것..

2. deployment 설정

3. deployment 설정 할때 temp 가 생기긴하는데 그래도 그냥 폴더 설정 할 것

이 아까운 주말에 ㅠㅠ

▼ more
다행히 이해가 되더라도
2018-01-28 20:39:41

암기하지 않으면 의미가 없다.

어릴 때 주로 들었던 말이 이해 없이 암기 하면 암기가 오래 가지 않는다는 것이 었는데 적어도 나의 어린 날 보다는 이해력이 높아졌다 치더라도

반대로 암기 하지 않으면 이해 한 것도 의미가 없다는 것을 새삼 느끼게 된다.

정작 그 개념이 떠오르더라도 나는 아무말도 할 수 없으니까.

연구라는 단계로 접어들며

점차 수학문제를 풀기보다는 수학 문제의 해설서(논문)를 이해 하고

해설서를 개선하거나 새로운 문제를 스스로 만들고 풀어보는 방식으로 공부의 방향이 옮겨가고 있다.

당연히 이해가 먼저인 작업이긴하나

이해를 하더라도 이를 응용 하는데 어색한 도구 때문에 답답한 경우가 더러 있다.

그렇다고 안 그래도 부족한 시간에 도구에 숙달 되는 자체에 시간은 허비하고 싶지 않다.

오늘도 그랬다.

그리고

생각해 낸 해법은 주입식 암기 로 숙달 되는 시간을 단축 하자는 것.

적어도 공식을 외우기 전에 이해하는 할테니 이해는 그렇다 치고 공식을 달달달 암기하면 한번 이해한 해설서나 공식을 좀 더 오래 내 머리에 저장할 수 있지 않을까 기대해본다.

물론 한주에 2 일.

이 짧고 동떨어진 시간을 효율적으로 사용하기에 암기만은 부족하나

무계획으로 1 개월을 날리고 나니 뭐라도 다른 수를 찾지 않으면 안 될 것 같은 기분에 생각해낸 방법이다.

이 특수한 경우에 적용하자면 암기를 평생도 아니고

다음 날짜에 까먹지 않을정도로만 기억하면 된다.

▼ more